Docker Build and Deployment Guide (mcpo project)
@flyfox666
关于 Docker Build and Deployment Guide (mcpo project)
An example Docker image for mcpo(with npm,curl,nodejs,uv Pre-Built;Pre-Built MCP:amap;baidumap;server-brave-search; tavily;fetch), a tool that exposes MCP (Model Context Protocol) servers as OpenAPI-compatible HTTP endpoints for OpenWebUI.
基本信息
配置
工具
未检测到工具
工具是从 README 中自动提取的。维护者可以在 ## Tools 标题下列出工具,即可填充这部分内容。
概览
What is mcpo?
mcpo (Model Context Protocol OpenAPI Proxy) is a containerized deployment using Docker and Docker Compose. It dynamically installs MCP server tools (Python uvx, Node.js npx) at startup based on a config.json, runs as a non-root user for security, and supports flexible pip and apt mirror configuration.
How to use mcpo?
Create a .env file with MCPO_API_KEY (required) and optionally PIP_SOURCE. Prepare a config.json with MCP server definitions. Build the image with docker-compose build [--no-cache] and start the service with docker-compose up -d. The container’s start.sh script installs dependencies and launches the mcpo service.
Key features of mcpo
- Dynamic dependency installation at container startup.
- Non-root user (
appuser) execution for security. - Persistent volumes for config, logs, data, and caches.
- Configurable pip source via
PIP_SOURCEbuild argument. - Environment isolation per MCP tool installation.
Use cases of mcpo
- Deploying mcpo with multiple MCP servers in a containerized environment.
- Replicating deployments with pinned tool versions for reproducibility.
- Running mcpo with custom pip mirrors to speed up builds.
- Managing API keys securely via
.envfiles.
FAQ from mcpo
Why do I see “npx: command not found” or “git: command not found”?
Ensure the Dockerfile installs nodejs and git, and that the PATH includes /usr/bin. Rebuild the image with docker-compose build --no-cache.
Why do I get “mkdir: cannot create directory '/root': Permission denied”?
The container runs as non-root user appuser. All cache directories are redirected to /app via ENV variables, and start.sh only creates directories under /app.
Why is pip not using my custom PIP_SOURCE?
Confirm the .env file contains PIP_SOURCE and that docker-compose.yml passes it as a build argument (build.args). The Dockerfile must receive it via ARG PIP_SOURCE.
Why are network and dependency installations slow or failing?
The Dockerfile uses an Aliyun mirror to accelerate apt. For Python packages, set PIP_SOURCE in .env to a domestic mirror. Node.js and uv installations still depend on network availability.
云与基础设施 分类下的更多 MCP 服务器
🐳 docker-mcp
QuantGeekDevA docker MCP Server (modelcontextprotocol)
K8s MCP Server
alexei-ledK8s-mcp-server is a Model Context Protocol (MCP) server that enables AI assistants like Claude to securely execute Kubernetes commands. It provides a bridge between language models and essential Kubernetes CLI tools including kubectl, helm, istioctl, and argocd, allowing AI syste
Cloudflare MCP Server
cloudflareTerraform MCP Server
hashicorpThe Terraform MCP Server provides seamless integration with Terraform ecosystem, enabling advanced automation and interaction capabilities for Infrastructure as Code (IaC) development.
aws-finops-mcp-server
ravikiranvmAn MCP (Model Context Protocol) server that brings powerful AWS FinOps capabilities directly into your AI assistant. Analyze cloud costs, audit for waste, and get budget insights using natural language, all while keeping your credentials secure on your local machine.
评论