• Docker-compose healthcheck

    View Comments

    Hace un tiempo que empecé a usar Docker y docker-compose casi diariamente.

    Hoy me topé con un problema, al levantar una app Flask con Flask-MongoAlchemy y un Mongodb en un compose, y la webapp fallaba al aun no levantar el nodo de Mongodb.

    Luego de duckduckear un poco, veo que usando el Compose File Format 2.1 existe un parametro healthcheck, el cual para usar con mongodb se puede usar de la siguiente manera

    healthcheck:
      test: mongo test --eval "printjson(db.runCommand({ping:1}))"
      interval: 2s
      timeout: 5s
      retries: 30

    y luego, en el container del webserver, agregar como condicion el healthcheck de la db

    depends_on:
     mongo:
       condition: service_healthy
  • blog comments powered by Disqus