0Pricing
MCP Academy · 课时

将服务器打包进 Docker

构建可复现的服务器镜像。

将服务器打包进 Docker 是 CoddyKit 上的免费 MCP Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 MCP Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 MCP Academy 课程共包含 4 节课。

为什么要打包

要让服务器可以在任何地方运行,您需要将它与 Python 及其依赖项一起打包。Docker 会将这一切封装成一个可移植的镜像。📦

Dockerfile 是什么

Dockerfile 是一份简单的步骤配方。每一行都会告诉 Docker 如何组装最终用于运行 MCP 服务器的镜像。

# Dockerfile
FROM python:3.12-slim

从基础镜像开始

第一行选择一个基础镜像。精简的 Python 镜像可以在提供可用解释器的同时减少整体体积,供您在其上构建。

FROM python:3.12-slim

设置工作目录

使用 WORKDIR 选择镜像中存放代码的文件夹。后续命令都会相对于这个整洁且明确的路径运行。

WORKDIR /app

复制代码

COPY 指令会将文件从您的计算机移入镜像。请同时放入服务器代码和依赖项列表。

COPY . /app

安装依赖项

在构建过程中运行 pip,这样 mcp SDK 和您的库就会预先写入镜像,而不必在每次启动时重新安装。

RUN pip install --no-cache-dir -r requirements.txt

声明启动命令

CMD 行规定容器启动时要运行的内容。请将它指向您的服务器,让容器启动后直接进入 MCP。

CMD ["python", "server.py"]

构建镜像

一条命令就能将这份配方转换为真正的镜像。-t 标志会为镜像添加名称,方便您稍后再次使用。🛠️

docker build -t my-mcp-server .

运行容器

使用 docker run 从镜像启动容器。对于 HTTP 服务器,请映射端口,以便外部访问。

docker run -p 8000:8000 my-mcp-server

保持镜像精简

更小的镜像部署更快,也更难受到攻击。请跳过缓存,并且只复制所需内容,让构建保持精简。

设计即具备可复现性

任何拉取您镜像的人都会获得与您构建时完全相同的环境。这种可复现性终结了经典的“在我的机器上能运行”问题。

快速检查

Dockerfile 中的哪一行决定了容器启动时运行的内容?

回顾:将 MCP 容器化

Dockerfile 会选择基础镜像、复制代码、安装依赖项并设置启动命令。将其构建为镜像后,就可以在任何地方以相同方式运行。🚀

常见问题解答

「将服务器打包进 Docker」课时是免费的吗?

是的 — 「将服务器打包进 Docker」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 MCP Academy 课程的其余内容,请升级到 CoddyKit PRO。 MCP Academy 课程共包含 4 节课。

「将服务器打包进 Docker」这节课中我会学到什么?

构建可复现的服务器镜像。 你通过在浏览器中直接运行的动手代码来练习 MCP Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 MCP Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 MCP Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「将服务器打包进 Docker」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 MCP Academy 课中编写并运行代码吗?

能。每节 MCP Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. 将服务器打包进 Docker
  2. 在反向代理后运行
  3. 健康检查与重启
  4. 连接远程客户端
← 返回 MCP Academy