Multi-stage Dockerfile produces a lean image with the compiled SvelteKit
app (adapter-node) and the MCP server TypeScript source. A single image
supports two run modes selected via CMD: web (default) and mcp.
- docker-entrypoint.sh handles CA certificate install (PEM/DER auto-detected
via openssl), SSH key permission fix for Windows-mounted keys, per-host
HTTPS credential helpers for Bitbucket and GitLab, DB migrations, then
starts the requested service
- docker-compose.yml runs web on :3000 and the MCP HTTP server on :3001,
with the MCP container pointed at the web service via internal DNS
- .dockerignore excludes node_modules, build output, .env files, and *.db*
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>