services: db: image: pgvector/pgvector:pg17 container_name: nexus-db environment: POSTGRES_USER: nexus_user POSTGRES_PASSWORD: nexus_password POSTGRES_DB: nexus_db ports: - "5432:5432" volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U nexus_user -d nexus_db"] interval: 5s timeout: 5s retries: 5 web: build: context: . dockerfile: Dockerfile container_name: nexus-web ports: - "5000:5000" environment: - ASPNETCORE_ENVIRONMENT=Production - ConnectionStrings__PostgresConnection=Host=db;Database=nexus_db;Username=nexus_user;Password=nexus_password - Authentication__Google__ClientId=${GOOGLE_CLIENT_ID:-placeholder} - Authentication__Google__ClientSecret=${GOOGLE_CLIENT_SECRET:-placeholder} - Ai__Google__ApiKey=${GOOGLE_AI_API_KEY:-placeholder} depends_on: db: condition: service_healthy volumes: pgdata: