services: web: image: node:20-alpine working_dir: /workspace command: ["sh", "-c", "sleep infinity"] ports: - "${WEB_PORT:-3000}:3000" volumes: - .:/workspace depends_on: - api api: image: node:20-alpine working_dir: /workspace command: ["sh", "-c", "sleep infinity"] ports: - "${API_PORT:-3001}:3001" volumes: - .:/workspace depends_on: - mongo worker: image: node:20-alpine working_dir: /workspace command: ["sh", "-c", "sleep infinity"] ports: - "${WORKER_PORT:-3002}:3002" volumes: - .:/workspace depends_on: - mongo - minio mongo: image: mongo:7 restart: unless-stopped ports: - "${MONGO_PORT:-27017}:27017" environment: MONGO_INITDB_ROOT_USERNAME: "${MONGO_ROOT_USERNAME:-emboflow}" MONGO_INITDB_ROOT_PASSWORD: "${MONGO_ROOT_PASSWORD:-emboflow}" volumes: - mongo-data:/data/db minio: image: minio/minio:RELEASE.2024-10-29T16-01-48Z restart: unless-stopped command: ["server", "/data", "--console-address", ":9001"] ports: - "${MINIO_PORT:-9000}:9000" - "${MINIO_CONSOLE_PORT:-9001}:9001" environment: MINIO_ROOT_USER: "${MINIO_ROOT_USER:-emboflow}" MINIO_ROOT_PASSWORD: "${MINIO_ROOT_PASSWORD:-emboflow123}" volumes: - minio-data:/data volumes: mongo-data: minio-data: