主頁 > 知識庫 > docker inspect 命令使用技巧

docker inspect 命令使用技巧

熱門標(biāo)簽:北海智能電銷機器人公司 淘寶辦理400電話是多少 外呼線路隨意切換嗎 艾澤拉斯地圖標(biāo)注 網(wǎng)絡(luò)電話外呼系統(tǒng)開發(fā) 福州語音電銷機器人招商 菏澤自動電銷機器人公司 滴滴急救中心地圖標(biāo)注 申請400電話收費標(biāo)

描述與簡介

docker inspect是docker客戶端的原生命令,用于查看docker對象的底層基礎(chǔ)信息。包括容器的id、創(chuàng)建時間、運行狀態(tài)、啟動參數(shù)、目錄掛載、網(wǎng)路配置等等。另外,該命令也可以用來查看docker鏡像的信息。

官方描述如下:

Return low-level information on Docker objects

語法

語法如下:

docker inspect [OPTIONS] NAME|ID [NAME|ID...]

OPTIONS選項

下表摘自官網(wǎng)

Name, shorthand Default Description
--format , -f Format the output using the given Go template
--size , -s Display total file sizes if the type is container
--type Return JSON for specified type

如上表,--type用于指定docker對象類型,如:container, image。在容器與鏡像同名時可以使用,使用頻率較低。比如,當(dāng)你機器上一個容器名為redis, 一個鏡像為redis:latest,則可以使用下面的命令查看鏡像信息。不使用type參數(shù),則返回容器信息:

# 查看redis:latest鏡像信息
docker inspect --type=image redis

# 查看redis容器信息
docker inspect redis

--size用于查看容器的文件大小,加上該參數(shù),輸出的結(jié)果中會包含SizeRootFs和SizeRw(目前我還不是很確定這兩個值的含義,望知情者告知)。

以上兩個參數(shù)都是用得比較少的,--format實用性最大,使用頻率也比較高。從表格描述可知,傳入的參數(shù)值應(yīng)該是go語言的模板。它很強大,可以做很多go函數(shù)的操作,由于我的go語言還沒有入門,所以這里就不說太多耍雜技的了,以免翻車,下面說一下常用的。

實踐

在實踐中,我們往往只需要查看其中部分信息,比如目錄掛載信息、網(wǎng)絡(luò)信息。而直接輸入docker inspect container時,會輸出容器的所有信息,就顯得比較臃腫,我們在命令行中翻頁還不方便。 此時,--format的實用性就體現(xiàn)出來了。實踐中的常用操作如下

查看目錄掛載信息

輸入如下命令, 則會輸出容器的Mounts信息,可以看到容器中各個目錄在宿主機的具體掛載位置。

docker inspect --format="{{json .Mounts}}" container

參數(shù)中的json是go語言的方法名,后面是取Mounts的值做json化處理。去掉json也是可以的。
如果覺得這樣輸入還是不太好看,可以對json再作進一步處理,如使用python的json模塊或者jq美化輸出。命令如下:

#使用python的json模塊美化

docker inspect --format="{{json .Mounts}}" container | python -m json.tool

#使用jq美化

docker inspect --format="{{json .Mounts}}" container | jq

查看容器網(wǎng)絡(luò)信息

查看網(wǎng)絡(luò)信息可以使用下面命令:

#查看完整網(wǎng)絡(luò)信息

docker inspect --format="{{json .NetworkSettings}}" container | jq

#查看網(wǎng)絡(luò)端口映射

docker inspect --format="{{json .NetworkSettings.Ports}}" container | jq

# 查看容器的網(wǎng)絡(luò)ip、網(wǎng)關(guān)等信息

docker inspect --format="{{json .NetworkSettings.Networks}}" container | jq

延伸學(xué)習(xí)

如果感興趣,還可以充分利用這個--format參數(shù),因為它是go的模板語法,差不多是可以寫go的代碼。例如上述的命令,json就是go的方法名

所以可以結(jié)合其他的go方法(如range,split)來耍雜技,本文就不班門弄斧了。

參考資料
docker官方文檔

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:延安 賀州 資陽 丹東 三沙 滄州 亳州 混顯

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《docker inspect 命令使用技巧》,本文關(guān)鍵詞  docker,inspect,命令,使用技巧,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《docker inspect 命令使用技巧》相關(guān)的同類信息!
  • 本頁收集關(guān)于docker inspect 命令使用技巧的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章