- Fix DNS resolution: Removed invalid dns_search configuration - Add graceful MongoDB connection error handling - Set restart policy to 'unless-stopped' for both services - Add development helper scripts (start-dev.sh, stop-dev.sh) - Update Docker Compose configurations for development - Restore main.rs from git history - Backend now logs MongoDB errors without crashing All containers now start successfully with proper DNS resolution on the dedicated normogen-network.
51 lines
1.2 KiB
YAML
51 lines
1.2 KiB
YAML
services:
|
|
backend:
|
|
build:
|
|
context: .
|
|
dockerfile: docker/Dockerfile
|
|
args:
|
|
BUILDKIT_INLINE_CACHE: 0
|
|
pull_policy: build
|
|
container_name: normogen-backend
|
|
ports:
|
|
- '8000:8000'
|
|
environment:
|
|
- RUST_LOG=info
|
|
- SERVER_PORT=8000
|
|
- SERVER_HOST=0.0.0.0
|
|
- MONGODB_URI=mongodb://mongodb:27017
|
|
- MONGODB_DATABASE=normogen
|
|
- JWT_SECRET=${JWT_SECRET:-please-change-this-in-production}
|
|
depends_on:
|
|
mongodb:
|
|
condition: service_healthy
|
|
networks:
|
|
- normogen-network
|
|
restart: unless-stopped
|
|
# Disable DNS search domain to fix hostname resolution
|
|
dns_search: []
|
|
mongodb:
|
|
image: mongo:6.0
|
|
container_name: normogen-mongodb
|
|
environment:
|
|
- MONGO_INITDB_DATABASE=normogen
|
|
volumes:
|
|
- mongodb_data:/data/db
|
|
networks:
|
|
- normogen-network
|
|
healthcheck:
|
|
test: |
|
|
echo 'db.runCommand("ping").ok' | mongosh localhost:27017/test --quiet
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 5
|
|
start_period: 40s
|
|
restart: unless-stopped
|
|
# Disable DNS search domain to fix hostname resolution
|
|
dns_search: []
|
|
volumes:
|
|
mongodb_data:
|
|
driver: local
|
|
networks:
|
|
normogen-network:
|
|
driver: bridge
|