Skip to main content
Glama
docker-compose.yml3.64 kB
# MCP-OPENAPI-DOCX Docker Compose Configuration # Development and production environment setup version: '3.8' services: # Main API application api: build: context: . dockerfile: Dockerfile container_name: docx-api ports: - "8000:8000" environment: - DATABASE_URL=postgresql+asyncpg://docx:docx@postgres:5432/docx_db - REDIS_URL=redis://redis:6379/0 - CELERY_BROKER_URL=redis://redis:6379/1 - CELERY_RESULT_BACKEND=redis://redis:6379/2 - SECRET_KEY=${SECRET_KEY:-your-super-secret-key-change-in-production} - DEBUG=${DEBUG:-false} - ENVIRONMENT=${ENVIRONMENT:-development} volumes: - ./uploads:/app/uploads - ./exports:/app/exports - ./logs:/app/logs depends_on: postgres: condition: service_healthy redis: condition: service_healthy networks: - docx-network restart: unless-stopped healthcheck: test: ["CMD", "python", "-c", "import httpx; httpx.get('http://localhost:8000/api/v1/health')"] interval: 30s timeout: 10s retries: 3 start_period: 10s # Celery worker for background tasks celery-worker: build: context: . dockerfile: Dockerfile container_name: docx-celery-worker command: celery -A src.tasks.celery_app worker --loglevel=info environment: - DATABASE_URL=postgresql+asyncpg://docx:docx@postgres:5432/docx_db - REDIS_URL=redis://redis:6379/0 - CELERY_BROKER_URL=redis://redis:6379/1 - CELERY_RESULT_BACKEND=redis://redis:6379/2 volumes: - ./uploads:/app/uploads - ./exports:/app/exports depends_on: - api - redis networks: - docx-network restart: unless-stopped # Celery beat for scheduled tasks celery-beat: build: context: . dockerfile: Dockerfile container_name: docx-celery-beat command: celery -A src.tasks.celery_app beat --loglevel=info environment: - CELERY_BROKER_URL=redis://redis:6379/1 - CELERY_RESULT_BACKEND=redis://redis:6379/2 depends_on: - celery-worker networks: - docx-network restart: unless-stopped # PostgreSQL database postgres: image: postgres:15-alpine container_name: docx-postgres environment: - POSTGRES_USER=docx - POSTGRES_PASSWORD=docx - POSTGRES_DB=docx_db volumes: - postgres-data:/var/lib/postgresql/data ports: - "5432:5432" networks: - docx-network restart: unless-stopped healthcheck: test: ["CMD-SHELL", "pg_isready -U docx -d docx_db"] interval: 10s timeout: 5s retries: 5 # Redis for caching and Celery broker redis: image: redis:7-alpine container_name: docx-redis ports: - "6379:6379" volumes: - redis-data:/data networks: - docx-network restart: unless-stopped healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 10s timeout: 5s retries: 5 # Flower for Celery monitoring (optional) flower: build: context: . dockerfile: Dockerfile container_name: docx-flower command: celery -A src.tasks.celery_app flower --port=5555 ports: - "5555:5555" environment: - CELERY_BROKER_URL=redis://redis:6379/1 - CELERY_RESULT_BACKEND=redis://redis:6379/2 depends_on: - celery-worker networks: - docx-network restart: unless-stopped profiles: - monitoring volumes: postgres-data: driver: local redis-data: driver: local networks: docx-network: driver: bridge

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Fu-Jie/MCP-OPENAPI-DOCX'

If you have feedback or need assistance with the MCP directory API, please join our Discord server