services: database: image: postgres environment: POSTGRES_USER: user POSTGRES_PASSWORD: password POSTGRES_DB: database healthcheck: test: [CMD-SHELL, pg_isready -U user -d database] interval: 1s timeout: 3s retries: 10 importer: build: target: importer environment: SQLITE_FILE: /app/Chinook.db DATABASE_URL: postgres://user:password@database:5432/database volumes: - ./Chinook.db:/app/Chinook.db restart: on-failure depends_on: database: condition: service_healthy agent: build: target: agent environment: - MCP_SERVER_URL=http://mcp-gateway:8811/sse - DATABASE_DIALECT=PostgreSQL - QUESTION="Which sales agent made the most in sales in 2009?" depends_on: - database models: qwen3: endpoint_var: MODEL_RUNNER_URL model_var: MODEL_RUNNER_MODEL mcp-gateway: # mcp-gateway secures your MCP servers image: docker/mcp-gateway:latest use_api_socket: true command: - --transport=sse - --secrets=/run/secrets/database-url # add any MCP servers you want to use - --servers=postgres - --tools=query secrets: - database-url models: qwen3: model: ai/qwen3:14B-Q6_K secrets: database-url: file: ./postgres_url