docker-compose获取一个docker的ID

我使用docker-compose和docker-compose.yml文件。

有没有办法得到.yml,另一个docker(这是在同一个docker,compose.yml)的ID?

泊坞窗,compose.yml:

containerA: command: python -u catch_sig.py volumes: - /workspace:/app containerB: command: echo -e "POST /containers/containerA/kill?signal=SIGUSR1 HTTP/1.0\r\n" | nc -U /tmp/docker.sock 

随着更新的docker组成版本(我有1.8.0),你可以做

 $ docker-compose ps -q 

哪个只会显示id。 查看使用情况。

  $ docker-compose ps --help List containers. Usage: ps [options] [SERVICE...] Options: -q Only display IDs 

不知道.yml文件,但如果你链接的容器,你可以从文件中写的/etc/hosts的ID。 也许这会有所帮助。

您可以将Docker客户端添加到containerB,然后将DOCKER_HOST环境设置为底层主机(请确保configuration其设置,以便接受networking上的TCP连接)。 然后,您可以使用容器名称来执行docker inspect containerA来识别您正在查询的主机。

这应该给你containerA的容器ID。