Docker學習筆記之top,inspect,exec,export命令
PS:我的實驗環境我是直接在root下所以命令都不需要進行sudo
檢視容器程序
docker top可以檢視執行容器中執行的程序
一般用於檢視後臺型,互動型的需要到其他終端下檢視
首先建立一個後臺型容器並處於始終睡眠
docker run -d --name=daemon_top ubuntu /bin/bash -c 'while true;do sleep 1;done;'
docker ps
檢視一下執行的容器
docker top daemon_top
將看到如下
UID PID PPID C STIME TTY TIME CMD
root 22858 22848 0 22:10 ? 00:00:00 /bin/bash -c while true;do sleep 1; done
root 22915 22858 0 22:10 ? 00:00:00 sleep 1
檢視容器資訊
docker inspect 容器名/容器ID
可以檢視容器的配置資訊:容器名,環境變數, 執行命令, 主機配置,網路配置,資料卷配置。
主要還是需要了解這些內容的細節。(這個接下來再具體瞭解。)
-f或者–format格式化標識,
查詢容器的執行狀態:
docker inspect --format='{{.State.Running}}' 容器名
查詢容器的IP的地址
docker inspect --format='{{.NetworkSettings.IPAddress}}' 容器名
容器內執行命令
我們通常可能會在一個正在執行的容器中啟動另一個程式(併發啟動)會用到docker exec命令
執行命令可以建立互動型和後臺型
-d:後臺型
-it:標準輸入和關聯終端
docker exec -d 容器名 touch /tmp/new_file
這個命令就是要執行一個後臺任務,在
/tmp下建立一個名為new_file的檔案
docker exec -it 容器名 /bin/bash
這個命令都可以用互動型和後臺型容器。
如果用於後臺型容器就可以為後臺型容器關聯一個終端。
(這裡可以想想前臺程式和後臺程式的區別????)
容器的匯入和匯出
docker export命令提供一種容器持久化的方式。我們在運行了容器後修改配置等等操作後,我們用docker export 命令將容器匯出成檔案,這樣我們就可以進行分享。
docker export 容器名 > 檔名
匯出後我們當然也可以將檔案匯入作為映象
cat 檔名 | docker import - 映象名:標記
import會將從標準輸入 讀取容器內容。
import也可以從網路上匯入容器
docker import url res:tag(映象名:標記)
思考???
res:tag具體對應什麼可以去找一個例子試試。