這篇文章主要介紹“docker inspect命令使用技巧實(shí)例分析”的相關(guān)知識(shí),小編通過(guò)實(shí)際案例向大家展示操作過(guò)程,操作方法簡(jiǎn)單快捷,實(shí)用性強(qiáng),希望這篇“docker inspect命令使用技巧實(shí)例分析”文章能幫助大家解決問(wèn)題。
城東網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、APP開(kāi)發(fā)、自適應(yīng)網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開(kāi)發(fā),運(yùn)營(yíng)維護(hù)。創(chuàng)新互聯(lián)建站自2013年創(chuàng)立以來(lái)到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來(lái)保證我們的工作的順利進(jìn)行。專(zhuān)注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
描述與簡(jiǎn)介
docker inspect是docker客戶端的原生命令,用于查看docker對(duì)象的底層基礎(chǔ)信息。包括容器的id、創(chuàng)建時(shí)間、運(yùn)行狀態(tài)、啟動(dòng)參數(shù)、目錄掛載、網(wǎng)路配置等等。另外,該命令也可以用來(lái)查看docker鏡像的信息。
官方描述如下:
return low-level information on docker objects
語(yǔ)法
語(yǔ)法如下:
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ì)象類(lèi)型,如: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語(yǔ)言的模板。它很強(qiáng)大,可以做很多go函數(shù)的操作,由于我的go語(yǔ)言還沒(méi)有入門(mén),所以這里就不說(shuō)太多耍雜技的了,以免翻車(chē),下面說(shuō)一下常用的。
實(shí)踐
在實(shí)踐中,我們往往只需要查看其中部分信息,比如目錄掛載信息、網(wǎng)絡(luò)信息。而直接輸入docker inspect container時(shí),會(huì)輸出容器的所有信息,就顯得比較臃腫,我們?cè)诿钚兄蟹?yè)還不方便。 此時(shí),--format的實(shí)用性就體現(xiàn)出來(lái)了。實(shí)踐中的常用操作如下
查看目錄掛載信息
輸入如下命令, 則會(huì)輸出容器的mounts信息,可以看到容器中各個(gè)目錄在宿主機(jī)的具體掛載位置。
docker inspect --format="{{json .mounts}}" container
參數(shù)中的json是go語(yǔ)言的方法名,后面是取mounts的值做json化處理。去掉json也是可以的。
如果覺(jué)得這樣輸入還是不太好看,可以對(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
關(guān)于“docker inspect命令使用技巧實(shí)例分析”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí),可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,小編每天都會(huì)為大家更新不同的知識(shí)點(diǎn)。