我需要找出(以编程方式)我在Docker中部署的特定应用程序的容器ip &端口。该应用程序可以在多个节点中运行并扩大规模。以编程方式查找码头容器ip/port
有没有使用Docker API找出容器ips和端口的方法?
我需要找出(以编程方式)我在Docker中部署的特定应用程序的容器ip &端口。该应用程序可以在多个节点中运行并扩大规模。以编程方式查找码头容器ip/port
有没有使用Docker API找出容器ips和端口的方法?
使用Docker SDK。只要选择语言...;)
的Docker API提供的所有操作HTTP端点,因此它可以在大多数languages轻松进行管理。
可以列出所有集装箱港口
$ curl -s --unix-socket /var/run/docker.sock \
http:/v1.26/containers/json \
| jq '.[] | .Id, .Ports'
"b8249afa78bcc8027a38048384c7656a305a3c8d5a517d52df5a299223d8064d"
[
{
"IP": "0.0.0.0",
"PrivatePort": 3142,
"PublicPort": 3142,
"Type": "tcp"
}
]
"49125f8274242a5ae244ffbca121f354c620355186875617d43876bcde619732"
[
{
"IP": "0.0.0.0",
"PrivatePort": 4873,
"PublicPort": 4873,
"Type": "tcp"
}
]
检索端口映射定义列表中特定容器
$ curl -s --unix-socket /var/run/docker.sock \
http:/v1.26/containers/49125f8274242a5ae244ffbca121f354c620355186875617d43876bcde619732/json \
| jq '.NetworkSettings | .Ports | keys'
[
"4873/tcp"
]
泊坞PS,管道grep的名字,管道切割容器的id,管泊坞检查 –