第三部分导读 · 本地运行与打包
代码在你机器上能跑,换一台就报缺包、缺变量、端口被占,是最常见的“我这里没问题”。这一部分讲怎么让程序在哪里都跑得起来:用包管理器按锁文件装出一致的依赖,用 .env 把端口、地址和密钥放在代码之外,用 Docker 把程序和运行环境打成镜像,再用 Compose 一条命令同时起应用、数据库和缓存。
要做什么,用哪个
Section titled “要做什么,用哪个”| 我要做什么 | 用哪个 | 详见 |
|---|---|---|
| 拿到别人的项目,装出和他一样的依赖 | npm(pnpm、uv、dotnet、go 命令各有对应) | 第 14 章 14.4 |
| 下载太慢,换成国内镜像源 | npm 的 registry 设置(pip、uv、NuGet、Go 各有写法) | 第 14 章 14.4 |
| 一台机器上装多个 Node 或 Python 版本 | fnm(Python 用 uv) | 第 14 章 14.4 |
| 配置和密钥不写进代码 | .env 加 .env.example | 第 15 章 15.4 |
| 用现成镜像跑数据库,或把自己的应用打成镜像 | Docker | 第 12 章 12.4 |
| 应用加数据库一起起、一起停 | Docker Compose | 第 13 章 13.4 |
| CI 里要用密钥 | GitHub Actions 机密(Secrets) | 第 15 章 15.4 |
- 第 12 章 Docker:镜像和容器的概念、常用命令、给 Node 应用写 Dockerfile、推送到 Docker Hub。
- 第 13 章 Docker Compose:用一个 compose.yaml 起多个服务,随书文件开箱即用,以及临时覆盖配置。
- 第 14 章 包管理器对照:npm、pnpm、pip、uv、dotnet、go 的命令对照,锁文件、镜像源和多版本运行时。
- 第 15 章 环境变量与 .env:环境变量的设置与读取,.env 文件的写法,CI 机密和 .NET 开发机密。