Docker:显示带有链接的运行容器

我使用docker-compose来创build一些容器并在它们之间创build链接。 假设我有一个容器叫做运行,它有一个链接到b也运行。

我可以轻松检查正在运行的容器,以查看哪些容器链接到哪个容器?

我注意到docker ps列出了正在运行的容器以及一些有用的信息,比如什么端口被暴露。 同样, docker-compose ps提供了相同types的信息。 似乎也不包括显示链接的选项。

编辑

我试图让docker inspect我正在运行的容器,按照Erazihel的回答,看起来我没有链接。

 $ docker inspect -f "{{ .HostConfig.Links }}" docker_auth_1 [] 

也许docker-compose不像以前那样使用链接?

假设我有一个像这样docker-compose.yml

 services: auth: image: my-auth-image depends_on: - db networks: - integration db: image: my-db-image networks: - integration networks: integration: external: true 

也许我对“networking”的使用会影响链接的显示方式?

我在运行Docker版本17.06.0-ce-mac18(18433)的macOS Sierra上运行。

该命令显示集成networking中的容器。

 docker network inspect -f '{{json .Containers}}' integration | python -m json.tool 

要更具体:

 docker network inspect -f '{{range .Containers}}{{println .Name .IPv4Address}}{{end}}' integration 

编辑它以满足您的需求。

请参阅跨链接文档的通信 。

您可以使用Docker inspect命令获取Docker container的链接:

 docker inspect -f "{{ .HostConfig.Links }}" <name_of_your_container> 

以容器web为例:

 docker inspect -f "{{ .HostConfig.Links }}" web 

它输出的东西类似于:

[/分贝:/networking/分贝]

您可以看到web容器现在链接到db容器web/db

这里是关于docker inspect更多文档 。