docker检查,将字段键作为字符串返回

oiv*_*ind 4 docker

我正在尝试获取容器的网络名称。我试过:

docker inspect db_dev -f "{{index  .NetworkSettings.Networks }}"
Run Code Online (Sandbox Code Playgroud)

返回:

map[mynet_default:0xc0005dc000]
Run Code Online (Sandbox Code Playgroud)

如何返回字符串 "mynet_default" ?

Mic*_* B. 5

基于这个答案

docker inspect db_dev \
  -f '{{range $k, $v := .NetworkSettings.Networks}}{{print $k}}{{end}}'
Run Code Online (Sandbox Code Playgroud)

printf "%s\n" $k如果有多个网络,您可能想要使用,否则它们将在没有分隔符的情况下连接起来。


range文档

如果一个range动作初始化一个变量,该变量被设置为迭代的连续元素。此外, arange可以声明两个变量,用逗号分隔。