1. 程式人生 > >Docker學習筆記之top,inspect,exec,export命令

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

這裡能看到兩個程序while和sleep(這裡我聽說shell中的一條語句就是一個程序??不知道是不是真的,下次可以試試???)

檢視容器資訊

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具體對應什麼可以去找一個例子試試。