Pages - Menu

2019年11月20日 星期三

[Docker]取得Container內的基本資訊

前言

經歷上次的container無法啟動事件,
開始學習看docker的設定值,越挖才知道越深奧。
Docker是用Go 開發的,所以可以直接針對結果做格式化輸出,
有支援--format的指令皆可使用




正文

如果不想下那麼多指令,可以直接
docker inspect <container>
會看到一整串非常長的設定值。
下面所有的指令位置,都是根據上面的設定值去弄出來的。
必須參照樹的關係一層一層下去,不然會找不到

1.顯示所有的容器及port

這邊用到了printf 以及print 輸出,最後的$(sudo docker ps -a -q) 可以是單一容器或是全部容器

sudo docker inspect --format='{{.Name}}   {{.Config.ExposedPorts}}' $(sudo docker ps -a -q)
sudo docker inspect --format='{{printf "Name:%s\tPort:%s" .Name .Config.ExposedPorts}}' $(sudo docker ps -a -q)
sudo docker inspect --format='{{print .Name "\t" .Config.ExposedPorts}}' $(sudo docker ps -a -q)

其實這個資訊直接用docker ps 就都看的到了。

2.顯示所有容器的logPath


sudo docker inspect --format='{{.Name}}  {{.LogPath}}' $(sudo docker ps -a -q)


ref.Docker格式化輸出命令:"docker inspect --format" 學習筆記
docker inspect

沒有留言:

張貼留言