version: '3.8' services: mongodb: image: mongo:7 container_name: devdrops-mongodb ports: - "27017:27017" volumes: - mongodb_data:/data/db environment: - MONGO_INITDB_DATABASE=devdrops healthcheck: test: echo 'db.runCommand("ping").ok' | mongosh localhost:27017/test --quiet interval: 10s timeout: 5s retries: 5 backend: build: context: ./server dockerfile: Dockerfile container_name: devdrops-backend ports: - "3000:3000" environment: - NODE_ENV=production - MONGODB_URI=mongodb://mongodb:27017 - MONGODB_DB_NAME=devdrops - JWT_SECRET=${JWT_SECRET:-your-super-secret-jwt-key-change-in-production-min-32-chars} - JWT_EXPIRES_IN=7d - FRONTEND_URL=http://localhost:5173 - LOG_LEVEL=info depends_on: mongodb: condition: service_healthy restart: unless-stopped frontend: build: context: ./client dockerfile: Dockerfile container_name: devdrops-frontend ports: - "5173:80" environment: - VITE_API_URL=http://localhost:3000 depends_on: - backend restart: unless-stopped volumes: mongodb_data: