docker-compose.yml•996 B
version: '3.8'
services:
gptr-mcp:
build: .
ports:
- "8000:8000"
environment:
- MCP_TRANSPORT=sse
- DOCKER_CONTAINER=true
- OPENAI_API_KEY=${OPENAI_API_KEY}
- TAVILY_API_KEY=${TAVILY_API_KEY}
- PYTHONUNBUFFERED=1
env_file:
- .env
volumes:
# Mount logs directory for persistent logging
- ./logs:/app/logs
restart: unless-stopped
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
# Optional: Add a reverse proxy for production
nginx:
image: nginx:alpine
ports:
- "80:80"
- "443:443"
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
depends_on:
- gptr-mcp
restart: unless-stopped
profiles:
- production
networks:
gptr-mcp-net:
driver: bridge
# To connect to existing n8n network, run:
# docker network connect n8n-mcp-net gptr-mcp