Skip to main content
Glama
DOCKER_USAGE.md3.15 kB
# Docker Compose Quick Reference ## Development Mode (No Rebuild on Code Changes) Run with hot reload - code changes are immediately visible: ```powershell # First time: Build dev images (caches dependencies) docker compose -f docker-compose.dev.yml build # Start dev services (mounts source code) docker compose -f docker-compose.dev.yml up # Or run in background docker compose -f docker-compose.dev.yml up -d # View logs docker compose -f docker-compose.dev.yml logs -f # Stop services docker compose -f docker-compose.dev.yml down ``` ### Dev Services - **mcp-gateway** (port 3000) - API with `npm run dev` (tsup watch mode) - **admin-dashboard** (port 5173) - Vite dev server with hot reload - **postgres** (port 5432) - Development database - **redis** (port 6379) - Cache ### When to Rebuild Dev Images Only rebuild when you change: - `package.json` or `package-lock.json` - Native dependencies - Dockerfile itself For code changes, just save the file - the container picks it up automatically. --- ## Production Mode (All Bundled in Images) Build everything into self-contained images for deployment: ```powershell # Build production images docker compose -f docker-compose.prod.yml build # Start production services docker compose -f docker-compose.prod.yml up -d # View logs docker compose -f docker-compose.prod.yml logs -f # Stop services docker compose -f docker-compose.prod.yml down ``` ### Production Services - **mcp-gateway** - Built API bundle in production image - **admin-dashboard** - Built static files served by Nginx - **postgres** - Production database with persistent volume - **redis** - Cache with persistent volume ### Production Rebuild Rebuild production images whenever you: - Change any code (src/, admin-dashboard/src/) - Update dependencies - Modify configuration --- ## Default (Main docker-compose.yml) The main `docker-compose.yml` uses production builds by default: ```powershell # Use main compose file (same as prod) docker compose up -d docker compose down ``` --- ## Environment Variables Both dev and prod need API keys. Create `.env` file: ```env OPENROUTER_API_KEY=sk-or-v1-your-key OPENAI_API_KEY=sk-your-key ANTHROPIC_API_KEY=sk-ant-your-key CONFIG_ENCRYPTION_KEY=your-32-char-key-here ``` --- ## Quick Commands ```powershell # Dev: Start and watch logs docker compose -f docker-compose.dev.yml up # Dev: Rebuild only if package.json changed docker compose -f docker-compose.dev.yml build # Prod: Deploy docker compose -f docker-compose.prod.yml up -d --build # Check running containers docker compose -f docker-compose.dev.yml ps docker compose -f docker-compose.prod.yml ps # Clean up volumes (careful!) docker compose -f docker-compose.dev.yml down -v docker compose -f docker-compose.prod.yml down -v ``` --- ## Tips ### Dev Mode Benefits - ✅ Edit code locally, see changes instantly - ✅ No image rebuild for code changes - ✅ Fast iteration - ✅ Full stack (API + UI + DB + Redis) ### Prod Mode Benefits - ✅ Self-contained images ready for deployment - ✅ Optimized production builds - ✅ Can be deployed anywhere - ✅ No source code in containers

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/babasida246/ai-mcp-gateway'

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