我使用docker-compose
创建一些容器并在它们之间创建链接。假设我有一个名为a
的容器正在运行,该容器有一个同时运行的b
链接。
我可以轻松检查正在运行的容器,以查看哪些容器链接到哪个容器?</ p>
我注意到docker ps
列出了正在运行的容器以及一些有用的信息,比如暴露的端口。同样,docker-compose ps
提供相同类型的信息。似乎都没有包含显示链接的选项。
修改
根据下面Erazihel的答案,我尝试docker inspect
我正在运行的容器,看起来我没有链接。
$ 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
也许我对“网络”的使用会影响链接的显示方式?
我在运行Docker版本17.06.0-ce-mac18(18433)的macOS Sierra上。
答案 0 :(得分:2)
请参阅Communication across links documentation。
您可以使用Docker container
命令获取Docker inspect
的链接:
docker inspect -f "{{ .HostConfig.Links }}" <name_of_your_container>
让我们以容器web
为例:
docker inspect -f "{{ .HostConfig.Links }}" web
输出如下内容:
[/分贝:/网络/分贝]
您可以看到web
容器现已链接到db
容器web/db
。
答案 1 :(得分:2)
此命令显示 集成 网络中的容器。
argsAnywhere(cor.test.default)
更具体:
docker network inspect -f '{{json .Containers}}' integration | python -m json.tool
根据您的需要进行编辑。