services: frontend: image: node:20-alpine working_dir: /app volumes: - .:/app - /var/www/html/semblance:/app/dist-out command: > sh -c "cp .env.production .env && npm ci --silent && npm run build && cp -r dist/* /app/dist-out/" profiles: - build mongo: image: mongo:7 restart: unless-stopped ports: - "127.0.0.1:27017:27017" volumes: - mongo-data:/data/db healthcheck: test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"] interval: 10s timeout: 5s retries: 5 backend: build: ./backend restart: unless-stopped ports: - "127.0.0.1:5137:5137" env_file: - ./backend/.env environment: MONGO_URI: mongodb://mongo:27017/semblance_db volumes: - ./backend/uploads:/app/uploads - ./backend/temp:/app/temp depends_on: mongo: condition: service_healthy volumes: mongo-data: