services: web: build: context: . target: web ports: - "3000:3000" environment: - DATABASE_URL=postgresql://codeboard:codeboard@db:5432/codeboard - REDIS_URL=redis://redis:6379 - NEXTAUTH_URL=http://localhost:3000 depends_on: - db - redis restart: always worker: build: context: . target: worker environment: - DATABASE_URL=postgresql://codeboard:codeboard@db:5432/codeboard - REDIS_URL=redis://redis:6379 - OPENAI_API_KEY=${OPENAI_API_KEY:-} - ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY:-} - LLM_MODEL=${LLM_MODEL:-} - LLM_BASE_URL=${LLM_BASE_URL:-} depends_on: - db - redis restart: always db: image: postgres:16-alpine environment: POSTGRES_USER: codeboard POSTGRES_PASSWORD: codeboard POSTGRES_DB: codeboard volumes: - postgres_data:/var/lib/postgresql/data ports: - "5432:5432" restart: always redis: image: redis:7-alpine ports: - "6379:6379" volumes: - redis_data:/data restart: always volumes: postgres_data: redis_data: