繁体   English   中英

docker-compose mongo 健康检查失败

[英]docker-compose mongo healthcheck failing

您好,我的 mongo 健康检查失败,下面是我的 docker-compose 文件

version: "2.4"
services:
  production-api:
    build: .
    environment:
      - MONGO_URI=mongodb://mongodb:27017/productiondb
    volumes:
      - .:/app
    ports:
      - "3000:3000"
    depends_on:
        - mongodb   
        # condition: service_healthy

  mongodb:

    image: mongo
    ports:
      - "27017:27017"
    # healthcheck:
    #   test: echo 'db.runCommand("ping").ok' | mongo mongo:27017/productiondb --quiet 1
    #   interval: 10s
    #   timeout: 10s
    #   retries: 5

有没有办法将 MONGO_URI 作为变量传递给健康检查?

你的健康检查应该是这样的:

test: echo 'db.runCommand("ping").ok' | mongo localhost:27017/productiondb --quiet

也可以看看:

您可以将MONGO_URI传递给健康检查,方法是再次指定它:

mongodb:
..
environment:
- MONGO_URI=mongodb://mongodb:27017/productiondb

如果您想为两者使用一个值,请创建一个env_file并通过以下方式使用它:

env_file:
- mongo.env  # wich contains `MONGO_URI=mongodb://..`

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM