Skip to content

L26. 云端部署基础:把代码送上天

Vibe Coding 宣言:只在本地跑的代码,不是产品,是玩具。

0. 为什么这一课至关重要? (Why It Matters)

  • 不再“我这能跑”:在服务器上跑不通的代码,就是垃圾。
  • 24 小时在线:你的电脑要关机,但云服务器永远不睡觉。
  • 分享:发个链接给朋友,比发个压缩包帅多了。

1. 目标 (Goal)

理解 PaaS (Platform as a Service) 概念,了解 Docker 容器化原理(不用精通)。

2. 核心概念/装备/指令 (The Core)

2.1 PaaS (The Cloud)

  • IaaS (Infrastructure): 给你一台裸机(比如阿里云 ECS),你自己装系统。太麻烦。
  • PaaS (Platform): 给你一个环境(比如 Vercel/Railway),你只要传代码。Vibe Coder 首选。

2.2 Docker (The Box)

把你的代码和环境(Python, Node, 依赖包)打包成一个盒子。

  • Dockerfile: 告诉 Docker 怎么打包的说明书。
  • Image: 打包好的镜像。
  • Container: 运行起来的镜像。

3. 实战演练 (Action)

Step 1: 编写 Dockerfile

在项目根目录新建 Dockerfile (没有后缀):

dockerfile
# 1. 基础镜像
FROM python:3.10-slim

# 2. 工作目录
WORKDIR /app

# 3. 复制依赖
COPY requirements.txt .

# 4. 安装依赖
RUN pip install -r requirements.txt

# 5. 复制所有代码
COPY . .

# 6. 启动命令
CMD ["python", "main.py"]

Step 2: 本地构建 (Build)

需要先安装 Docker Desktop。

bash
docker build -t my-vibe-app .

Step 3: 本地运行 (Run)

bash
docker run -p 8000:8000 my-vibe-app

如果能跑起来,恭喜你,你的代码可以在全世界任何一台服务器上跑起来。

4. 常见问题 (FAQ - Vibe Style)

Q: 我一定要装 Docker 吗? A: 如果你用 Vercel/Railway,不用。 它们会自动识别你的 requirements.txt。但懂一点 Docker 能帮你排查环境问题。

Q: 镜像太大传得慢? A: slim 版基础镜像。 比如 python:3.10-slimpython:3.10 小好几百兆。

Q: Windows 装 Docker 报错? A: WSL2 没开。 问 AI “Windows 如何开启 WSL2”。

5. 验收标准 (Definition of Done)

  1. 根目录下有一个 Dockerfile
  2. 能解释清楚 Docker 是干嘛的(打包环境)。

Next Mission: L27. 静态网站部署:Vercel 的魔法

基于 Claude Code 构建