services: postgres: image: pgvector/pgvector:pg16 environment: POSTGRES_USER: ctxopt POSTGRES_PASSWORD: ctxopt POSTGRES_DB: ctxopt ports: - "5432:5432" volumes: - pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U ctxopt"] interval: 5s timeout: 5s retries: 5 api: build: . ports: - "3100:3100" environment: REPO_PATH: /repo DATABASE_URL: postgres://ctxopt:ctxopt@postgres:5432/ctxopt USE_PGVECTOR: "true" EMBEDDING_PROVIDER: local API_TOKEN: ${API_TOKEN:-dev-token} RATE_LIMIT_MAX: 200 volumes: - .:/repo depends_on: postgres: condition: service_healthy volumes: pgdata: