主頁 > 知識(shí)庫 > docker inspect 命令使用技巧

docker inspect 命令使用技巧

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

描述與簡介

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

官方描述如下:

Return low-level information on Docker objects

語法

語法如下:

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

OPTIONS選項(xiàng)

下表摘自官網(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對(duì)象類型,如:container, image。在容器與鏡像同名時(shí)可以使用,使用頻率較低。比如,當(dāng)你機(jī)器上一個(gè)容器名為redis, 一個(gè)鏡像為redis:latest,則可以使用下面的命令查看鏡像信息。不使用type參數(shù),則返回容器信息:

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

# 查看redis容器信息
docker inspect redis

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

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

實(shí)踐

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

查看目錄掛載信息

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

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

參數(shù)中的json是go語言的方法名,后面是取Mounts的值做json化處理。去掉json也是可以的。
如果覺得這樣輸入還是不太好看,可以對(duì)json再作進(jìn)一步處理,如使用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í)

如果感興趣,還可以充分利用這個(gè)--format參數(shù),因?yàn)樗莋o的模板語法,差不多是可以寫go的代碼。例如上述的命令,json就是go的方法名

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

參考資料
docker官方文檔

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(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)信息告之我們,我們將及時(shí)溝通與處理。本站內(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)民參考!
  • 推薦文章