正在查找用于添加等待的docker容器ip

正在查找用于添加等待的docker容器ip,docker,docker-compose,Docker,Docker Compose,我有一个docker compose文件,其中包含两个容器。我想在启动web服务器容器之前等待DB容器启动 我有一个脚本,可以一直等到给定的主机:端口可访问。我当前的docker文件如下所示: version: '3' services: db: image: <image repo url> ports: - "5500:5500" web: image: <image r

我有一个docker compose文件,其中包含两个容器。我想在启动web服务器容器之前等待DB容器启动

我有一个脚本,可以一直等到给定的主机:端口可访问。我当前的docker文件如下所示:

version: '3'

    services:
      db:
        image: <image repo url>
        ports:
          - "5500:5500"

      web:
        image: <image repo url>
        ports:
         - "7001:7001"
版本:“3”
服务:
db:
图片:
端口:
- "5500:5500"
网状物:
图片:
端口:
- "7001:7001"
我的计划是修改web映像,并在继续打开它之前,首先使用等待脚本

但是,我遇到的问题是如何从web容器中知道db容器的ip以作为ping进行测试?

您可以做的是:

CONTAINER_ID=`docker-compose ps -q web`
docker inspect -f '{{range .NetworkSettings.Networks} }{{.IPAddress}}{{end}}' $CONTAINER_ID
通过这种方式,您可以获得容器ID,然后是IP

我希望有帮助