Major release introducing the Live Platform architecture:
- SQLite database backend with async operations and migrations (E.1)
- AES-256-GCM credential encryption with HKDF key derivation (E.1)
- OAuth Social Login with GitHub and Google (E.2)
- Site management API with encrypted credential storage (E.3)
- Per-user MCP endpoints at /u/{user_id}/{alias}/mcp (E.3)
- User API keys with bcrypt hashing (E.3)
- Auto-generated config snippets for 5 MCP clients (E.3)
- Dashboard: dark/light mode, RBAC, My Sites, Connect page
- Active background health checks
- 452 tests (up from 303), all passing
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
56 lines
1.4 KiB
YAML
56 lines
1.4 KiB
YAML
# ===================================
|
|
# MCP Hub — Docker Compose (Standalone)
|
|
# ===================================
|
|
#
|
|
# Usage:
|
|
# cp env.example .env # edit with your values
|
|
# docker compose up -d
|
|
# curl http://localhost:8000/health
|
|
# open http://localhost:8000/dashboard
|
|
#
|
|
# For Coolify deployment, use docker-compose.coolify.yaml instead.
|
|
# ===================================
|
|
|
|
services:
|
|
mcp-server:
|
|
build:
|
|
context: .
|
|
dockerfile: Dockerfile
|
|
image: airano/mcphub:latest
|
|
container_name: mcphub
|
|
restart: unless-stopped
|
|
|
|
ports:
|
|
- "8000:8000"
|
|
|
|
env_file:
|
|
- .env
|
|
|
|
environment:
|
|
- PYTHONUNBUFFERED=1
|
|
|
|
healthcheck:
|
|
test: ["CMD", "wget", "-qO-", "http://localhost:8000/health"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 40s
|
|
|
|
volumes:
|
|
- mcp-data:/app/data # SQLite DB, API keys, OAuth data
|
|
- mcp-logs:/app/logs # Audit logs, health reports
|
|
# Docker socket — only needed for WP-CLI tools (WordPress Advanced plugin)
|
|
# Remove if you don't use wp_cache_flush, wp_transient_*, etc.
|
|
- /var/run/docker.sock:/var/run/docker.sock:ro
|
|
|
|
# Docker socket GID — adjust to match your host's docker group
|
|
# Check with: getent group docker | cut -d: -f3
|
|
group_add:
|
|
- "999"
|
|
|
|
volumes:
|
|
mcp-data:
|
|
driver: local
|
|
mcp-logs:
|
|
driver: local
|