容器化MCP Server的必要性与操作指南
- 作者: 五速梦信息网
- 时间: 2026年04月20日 04:46
如果你在开发一个 local MCP Server,并且有以下的任何一种情况:
需要安装多个 toolchain,才能运行 local MCP Server
用于开发 local MCP Server 的语言,没有像 npx 或者 uv 那样一键运行程序的工具 那么,容器化 MCP Server,对你的用户是有用的。 反之,如果你已经用主流的 Node.js 或者 Python 来开发 local MCP Server,并且没有其他额外的依赖。 那么,你也许并不需要容器化。
WHAT
local MCP Server 其实就是个 Node.js/Python/PHP/Go/Java/… 开发的 Console App 而已,通过 stdin/stdout 与 MCP Client 交互,没有什么特别的地方。 所以,一般来说,你只需要一个 Dockerfile 即可。
HOW
既然是容器化一个普通的 Console App,那么,一切就变得很简单了。 以下是 Code Runner MCP Server 的 Dockerfile :
1 ## Stage 1: Builder
2 FROM node:lts-alpine AS builder
3
4 # Set working directory
5 WORKDIR /app
6
7 # Copy all files into the container
8 COPY . .
9
10 # Install dependencies without running scripts
11 RUN npm install --ignore-scripts
12
13 # Build the TypeScript source code
14 RUN npm run build
15
16 ## Stage 2: Runtime
17 FROM node:lts-alpine
18
19 WORKDIR /app
20
21 # Install Python and other programming languages
22 RUN apk add --no-cache \
23 python3 \
24 go \
25 php \
26 ruby
27
28 # Copy only the necessary files from the builder stage
29 COPY --from=builder /app/dist ./dist
30 COPY package*.json ./
31
32 # Install only production dependencies
33 RUN npm install --production --ignore-scripts
34
35 # Use a non-root user for security (optional)
36 RUN adduser -D mcpuser
37 USER mcpuser
38
39 # Set the entrypoint command
40 CMD ["node", "./dist/index.js"]
这,就是一个标准的 multi-stage builds 的 Dockerfile。 由于 Code Runner MCP Server 需要支持多种编程语言的运行,我在 Dockerfile 里面,预先安装了几个常用的编程语言的解释器/编译器。 这样,用户在使用的时候,唯一需要安装的,就是 Docker 而已:
1 {
2 "mcp": {
3 "inputs": [],
4 "servers": {
5 "mcp-server-code-runner": {
6 "command": "docker",
7 "args": [
8 "run",
9 "--rm",
10 "-i",
11 "formulahendry/mcp-server-code-runner"
12 ]
13 }
14 }
15 }
16 }
完整的代码,可以参考 Code Runner MCP Server 的 repo,完全开源: https://github.com/formulahendry/mcp-server-code-runner
- 上一篇: 日常总结,记录一些生理常识。持续记录
- 下一篇: 如果扶苏继承皇位(扶苏为什么没有继承皇位)
相关文章
-
日常总结,记录一些生理常识。持续记录
日常总结,记录一些生理常识。持续记录
- 互联网
- 2026年04月20日
-
日常生活,记录社交过程中的一些思考点
日常生活,记录社交过程中的一些思考点
- 互联网
- 2026年04月20日
-
日常生活,记录那些有趣的话,持续记录
日常生活,记录那些有趣的话,持续记录
- 互联网
- 2026年04月20日
-
如果扶苏继承皇位(扶苏为什么没有继承皇位)
如果扶苏继承皇位(扶苏为什么没有继承皇位)
- 互联网
- 2026年04月20日
-
如何把ASP.NET Core WebApi打造成Mcp Server
如何把ASP.NET Core WebApi打造成Mcp Server
- 互联网
- 2026年04月20日
-
如何辨别真假化妆品(化妆品真伪查询扫一扫)
如何辨别真假化妆品(化妆品真伪查询扫一扫)
- 互联网
- 2026年04月20日





