services: server: build: context: server ports: - 1250:1250 volumes: - ./server/:/app/ - /app/.venv env_file: - ./server/.env environment: ENTRYPOINT: server worker: build: context: server volumes: - ./server/:/app/ - /app/.venv env_file: - ./server/.env environment: ENTRYPOINT: worker beat: build: context: server volumes: - ./server/:/app/ - /app/.venv env_file: - ./server/.env environment: ENTRYPOINT: beat conductor-worker: build: context: server volumes: - ./server/:/app/ - /app/.venv env_file: - ./server/.env environment: ENTRYPOINT: conductor-worker depends_on: conductor: condition: service_healthy redis: image: redis:7.2 ports: - 6379:6379 web: image: node:22-alpine ports: - "3000:3000" command: sh -c "corepack enable && pnpm install && pnpm dev" restart: unless-stopped working_dir: /app volumes: - ./www:/app/ - /app/node_modules env_file: - ./www/.env.local environment: - NODE_ENV=development postgres: image: postgres:17 ports: - 5432:5432 environment: POSTGRES_USER: reflector POSTGRES_PASSWORD: reflector POSTGRES_DB: reflector volumes: - ./data/postgres:/var/lib/postgresql/data conductor: image: conductoross/conductor-standalone:3.15.0 ports: - 8180:8080 - 5001:5000 environment: - conductor.db.type=memory healthcheck: test: ["CMD", "curl", "-f", "http://localhost:8080/health"] interval: 30s timeout: 10s retries: 5 networks: default: attachable: true