| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- services:
- db:
- image: mongo:7
- container_name: rhl-lieferscheine-db
- restart: unless-stopped
- environment:
- MONGO_INITDB_ROOT_USERNAME: root
- MONGO_INITDB_ROOT_PASSWORD: supersecret
- volumes:
- - db_data:/data/db
- # Do not publish MongoDB to the host in the base/server compose.
- # Containers can still reach it via the Compose network (service name: "db").
- expose:
- - "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: .
- container_name: rhl-lieferscheine-app
- restart: unless-stopped
- env_file:
- - ${ENV_FILE:-.env.docker}
- depends_on:
- db:
- condition: service_healthy
- ports:
- - "3000:3000"
- volumes:
- # Server mount: real NAS
- - /mnt/niederlassungen:/mnt/niederlassungen:ro
- command: sh -c "node scripts/validate-env.mjs && npm run start"
- volumes:
- db_data:
|