Bläddra i källkod

RHL-005-feat(docker): add healthcheck for MongoDB service and update app dependency condition

Code_Uwe 2 dagar sedan
förälder
incheckning
b0fc3d8fef
1 ändrade filer med 17 tillägg och 1 borttagningar
  1. 17 1
      docker-compose.yml

+ 17 - 1
docker-compose.yml

@@ -10,6 +10,20 @@ services:
       - db_data:/data/db
     ports:
       - "27017:27017"
+    healthcheck:
+      test:
+        [
+          "CMD",
+          "mongosh",
+          "--quiet",
+          "mongodb://root:supersecret@localhost:27017/admin?authSource=admin",
+          "--eval",
+          "db.adminCommand('ping').ok",
+        ]
+      interval: 10s
+      timeout: 5s
+      retries: 10
+      start_period: 20s
 
   app:
     build: .
@@ -18,11 +32,13 @@ services:
     env_file:
       - .env.docker
     depends_on:
-      - db
+      db:
+        condition: service_healthy
     ports:
       - "3000:3000"
     volumes:
       - /mnt/niederlassungen:/mnt/niederlassungen:ro
+    command: sh -c "node scripts/validate-env.mjs && npm run start"
 
 volumes:
   db_data: