我覺的如果要寫一些自動化功能,或許能夠格式化的輸出容器內容還滿有用的。
以下一些Docker容器格式化顯示指令的參考範例
docker ps --format "{{.ID}}\t{{.Names}}"
#例如執行的名稱加命令
docker ps --format "table {{.Names}}: {{.Command}}" --no-trunc
#有table則會包含欄位名稱
docker ps --filter volume=/data --format "table {{.ID}}\t{{.Mounts}}" --no-trunc
#如果Docker swarm模式也可以用
docker service ls --format "table {{.Name}}\t{{.Ports}}"
格式化
格式化選項 (--format) 使用 Go 模板漂亮地打印容器輸出。
下面列出了 Go 模板的有效佔位符:
佔位符 | 說明 |
---|---|
.ID | 容器ID (Container ID) |
.Image | Image ID |
.Command | 引用命令 (Quoted command) |
.CreatedAt | 創建容器的時間 (Time when the container was created.) |
.RunningFor | 自容器啟動以來經過的時間。(Elapsed time since the container was started.) |
.Ports | 開放的連接埠 (Exposed ports.) |
.State | 容器狀態。 Container status (for example; “created”, “running”, “exited”). |
.Status | 容器狀態,包含有關持續時間和運行狀況的詳細信息。Container status with details about duration and health-status. |
.Size | 容器磁碟大小。Container disk size. |
.Names | 容器名稱。Container names. |
.Labels | 分配給容器的所有標籤。All labels assigned to the container. |
.Label | 此容器的特定標籤的值。例如 ‘{{.Label "com.docker.swarm.cpu"}}’。 Value of a specific label for this container. For example ‘{{.Label "com.docker.swarm.cpu"}}’ |
.Mounts | 此容器中安裝的捲的名稱。Names of the volumes mounted in this container. |
.Networks | 附加到此容器的網絡的名稱。Names of the networks attached to this container. |
No Comment
Post your comment