Windows 搭建 AI 编程开发环境全指南:Python、Docker、Ollama 与 Codex 实战

发布时间:2026/9/14 6:30:57
Windows 搭建 AI 编程开发环境全指南:Python、Docker、Ollama 与 Codex 实战 先说一个可能和主流认知不太一样的结论用 Windows 做 AI 编程未必比 Linux 差甚至在某些业务场景下更顺手。我见过太多朋友一开始就直奔双系统或纯 Linux结果折腾显卡驱动、桌面环境、输入法小半个月过去了还没开始写代码最后又默默回到了 Windows。这篇不是什么官方文档的翻译而是我这些年一直在 Windows 上搭 AI 开发环境、踩了不少坑之后整理出来的一套可以照着抄的搭建清单。内容包括系统级准备、Python 多版本管理、Docker 容器环境、本地中间件、模型推理服务以及 Codex 这类 AI 编程助手的接入完整覆盖“从零到能跑 AI 项目”的全流程。适合谁看一是刚接触 AI 编程、想在 Windows 上把 Python、Docker、本地模型跑起来的新人二是已经有一定经验、但每次换电脑都要重新配环境的开发者。照着这篇做一遍你手上这台 Windows 机器就能变成一套规范的 AI 工作台。1. 动手之前先想明白你的 AI 工作流到底需要哪些组件1.1 先给“AI 编程环境”做一个需求拆解很多人一上来就装一堆软件结果发现一半用不上。我建议先想清楚你所谓的“AI 编程环境”是做哪一类事情。我大致分成三种AI 应用开发调用大模型 API 或本地模型接口写业务逻辑、做 Prompt 编排、开发 RAG 应用。这类工作主要需要 Python、Node.js、HTTP 调试工具以及一个顺手的代码编辑器。模型微调与训练需要 Python、CUDA 驱动、PyTorch/TensorFlow以及足够的显存。Windows 下也能做小规模微调但大规模训练仍然建议 Linux 服务器。模型本地推理与测试用 Ollama、LM Studio、vLLMWindows 支持有限等工具把开源模型跑在本机验证效果或做私有化部署。这类工作最看重的是内存、显存和磁盘速度。你的需求决定了环境复杂度。如果只是写代码调 API那 Python 3.12 Docker 基本就够了如果还要本地跑模型那 CUDA、Ollama、大内存都得安排上。我下面会按“较完整”的配置来讲你可以按需裁剪。1.2 分清楚“系统级环境”和“项目级环境”这是我在团队里反复强调的一个原则系统级环境要克制项目级环境要独立。系统级环境指的是 Python、Node.js、JDK、Docker 这类基础运行时能装一个版本就装一个不要今天升级明天回滚。项目级环境则是每个项目自己的依赖比如某个项目要用 TensorFlow 2.15、另一个要用 PyTorch 2.5这些必须在虚拟环境里隔离绝对不能直接装在系统里。这个原则在 Windows 上尤其重要因为 Windows 没有 Linux 那么宽松的依赖管理机制装乱了清理起来非常痛苦。1.3 硬件与系统版本的底线先给一个参考配置标准实测跑中小型模型和常规开发够用组件最低要求推荐配置CPU4 核 8 线程8 核 16 线程以上内存16 GB32 GB / 64 GB显卡核显可开发NVIDIA RTX 4060 及以上跑本地模型硬盘256 GB SSD1 TB NVMe SSD系统Windows 10 22H2Windows 11 23H2 或更新硬盘和内存这两项直接决定你本地跑模型的时候会不会卡死。能上 32GB 内存就上现在很多本地模型加载后就要占掉 8-12GB再叠加 IDE 和浏览器16GB 会很吃紧。硬盘建议留出至少 100GB 给 Docker 镜像、模型文件和数据。2. Windows 系统底座整理终端、Git、包管理器与 WSL2 的取舍2.1 Windows Terminal现代终端是编程体验的第一步很多在 Windows 上写代码觉得不舒服的朋友问题往往出在终端还是老旧的 conhost。我强烈建议第一步就安装 Windows Terminal它支持多标签页、自定义配色、快捷键还集成了 PowerShell、CMD、WSL 等多个终端会话。安装方式很简单在 Microsoft Store 搜索“Windows Terminal”直接安装或者用 winget 命令winget install Microsoft.WindowsTerminal然后把默认终端设为 Windows Terminal默认配置文件设为 PowerShell 7。PowerShell 7 是跨平台的新版比自带的 Windows PowerShell 5.1 快很多而且很多命令行为更接近 Linux shell。安装 PowerShell 7 同样用 wingetwinget install Microsoft.PowerShell安装完成后把终端字体设置为 MesloLGM Nerd Font 或 Cascadia Code显示中文和特殊符号更舒服。这一步虽然不起眼但每天要敲几百条命令体验差距非常大。2.2 Git 安装与全局配置AI 项目大多用 Git 做版本管理Windows 下安装 Git 推荐用官方安装包或 wingetwinget install Git.Git安装时注意几个关键选项建议选择“Checkout as-is, commit Unix-style line endings”也就是签出时保持原样、提交时统一换行符为 LF这能避免和 Linux 环境产生换行符冲突。另外建议勾选“Enable symbolic links”虽然默认关闭更安全但很多 AI 项目会用到符号链接开启后能少踩很多坑。装完后的全局配置我一般这样做git config --global user.name 你的名字 git config --global user.email 你的邮箱 git config --global init.defaultBranch main git config --global core.autocrlf false git config --global core.quotepath falsecore.quotepath false特别重要否则中文文件名会被转义成八进制编码看着非常难受。2.3 包管理器winget 和 scoop 怎么选Windows 下有两个很常用的包管理器我建议两个都装但分工不同。winget 是微软官方出品适合安装图形化软件比如 Docker Desktop、VS Code、浏览器这类命令简单覆盖面广。scoop 则适合装命令行工具和开发库它有一个最大的优点安装的软件都在用户目录下不需要管理员权限也不会污染系统 PATH。对于经常要装一些编译工具、小工具的场景scoop 非常好用。scoop 的安装Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser irm get.scoop.sh | iex装完以后可以用 scoop 安装很多开发小工具scoop install curl wget unzip 7zip jq python nodejs不过注意scoop 里的 python 是它自己维护的版本如果你要用 pyenv-win 管理 Python 多版本最好别用 scoop 装 python避免冲突。2.4 WSL2 到底要不要启用我给你一个判断标准WSL2 是微软的 Windows 子系统相当于在 Windows 里跑一个轻量级 Linux 虚拟机。很多人聊 Windows 开发必谈 WSL2但我的建议是能不用就不用用到的时候再用。判断标准很简单如果你的 AI 项目以 Python 为主依赖都能通过 pip 安装docker 也能用 Windows 版那就完全不需要 WSL2直接用 Windows 原生环境反而更流畅文件读写性能也更好。如果你的项目里有 Linux-only 的依赖比如某些只在 Linux 下编译的 C/C 库、需要使用 systemd 的服务或者你要用 Docker Desktop 的 Linux 容器后端这个场景通常建议开启那就可以启用 WSL2。启用 WSL2 只需要在管理员 PowerShell 执行wsl --install然后重启系统会自动装好 WSL2 和默认的 Ubuntu。我个人现在主要用 WSL2 跑 Docker 后端和 Linux 环境调试日常 Python 开发仍然在 Windows 原生环境。两者可以共存不冲突。2.5 顺手检查 Windows 安全日志与防护状态搭建环境之前建议先看一眼系统是否健康。在“事件查看器”里展开“Windows 日志 - 安全”可以查看最近的登录成功/失败记录。这个步骤和生产环境服务器排查异常登录是一个套路Windows 桌面机同样适用。另外确认 Windows Defender 处于开启状态别在装开发工具时顺手把它关了后续安装破解工具或不明软件时中招的风险会大幅上升。3. AI 核心语言环境Python 多版本管理、Node.js 与 JDK3.1 pyenv-win用 Windows 也能优雅管理多个 Python 版本Python 是 AI 生态的第一语言这一节非常关键。Windows 下最头疼的问题就是 Python 版本管理装了 3.11某个项目要 3.9另一个项目要 3.13直接用官网安装包去覆盖版本很容易把系统搞乱。我推荐用 pyenv-win 来做多版本管理和 Linux 下的 pyenv 用法几乎一致。pyenv-win 的安装git clone https://github.com/pyenv-win/pyenv-win.git $HOME\.pyenv然后把$HOME\.pyenv\bin和$HOME\.pyenv\shims加入 PATH。或者直接用 scoopscoop install pyenv-win接下来常用命令pyenv install --list pyenv install 3.12.8 pyenv install 3.11.9 pyenv global 3.12.8 pyenv local 3.12.8pyenv local会在当前目录生成一个.python-version文件指定这个项目用哪个 Python 版本。切换目录后自动切到对应版本团队协作时也会读这个文件非常实用。有一个坑需要提醒pyenv-win 安装 Python 时可能会因为网络或权限问题失败如果下载慢可以先把 Python 安装包手动下载到~/.pyenv/installer目录文件名按python-3.12.8-amd64.exe规则命名再执行pyenv install 3.12.8这样能避开下载超时的问题。3.2 虚拟环境与依赖管理venv、uv、poetry 的选择Python 装好之后虚拟环境是必须的。我推荐的工具优先级是这样的日常用 venvPython 自带的python -m venv .venv简单可靠没有额外依赖。追求速度和现代体验用 uvuv是 Rust 写的包管理器安装依赖速度极快还能直接管理 Python 版本。安装方式pip install uv或winget install astral-sh.uv。项目管理用 poetry它能把依赖声明、锁定、打包都统一管理适合发布到 PyPI 的库项目。但对绝大多数 AI 应用项目来说poetry 的复杂配置反而会增加成本。我的建议是AI 项目直接用 uv 或 venv。uv 的使用非常直观uv venv .venv .\.venv\Scripts\activate uv pip install numpy pandas torch它会自动解析依赖并生成锁定文件既快又不容易出现依赖地狱。相比 pipuv 在安装大型依赖如 PyTorch时速度提升非常明显我实测能快两到三倍。3.3 Node.js 环境nvm-windows 管理多个版本AI 应用开发往往离不开前端展示或者要写 API 中间层Node.js 几乎是标配。Windows 下管理 Node.js 多版本最常用的是 nvm-windows。注意这个工具和 Linux 的 nvm 不是同一个项目但用法类似。安装方式Release 页下载 nvm-setup.exe或winget install CoreyButler.NVMforWindows常用命令nvm install 22.13.0 nvm use 22.13.0 node -v npm -vnvm-windows 默认会把 npm 包安装到%APPDATA%\npm目录要注意这个路径要在 PATH 中。不然全局安装的命令比如后面的 codex会提示找不到这是非常常见的坑。3.4 JDKSpring AI 生态的基础运行时如果你要开发基于 Spring AI 的 Java 项目JDK 17 是最稳妥的选择因为 Spring Boot 3.x 和 Spring AI 官方都要求 JDK 17 以上。Windows 下安装 JDK 我用的是 Adoptium Temurin 发行版也可以直接用 wingetwinget install EclipseAdoptium.Temurin.17.JDK安装后验证版本java -version然后配置环境变量。现在的 JDK 安装器一般会自动配置JAVA_HOME如果没有手动加系统环境变量JAVA_HOMEC:\Program Files\Eclipse Adoptium\jdk-17.0.x.x并把%JAVA_HOME%\bin加到 PATH。另外如果你本地要用 Elasticsearch 8.x它自带 JDK不需要额外设置。但如果用了 ES 7.x 或一些旧工具链就需要确认它们和 JDK 版本兼容别一股脑装最新版。3.5 补充Windows 下 C/C 编译环境AI 项目中经常有 Python 包需要编译 C 扩展比如pip install某些依赖时如果找不到现成 wheel就会走源码编译。Windows 下我建议安装Visual Studio Build Tools而不是完整版 Visual Studio。安装时勾选“使用 C 的桌面开发”工作负载这样 cl.exe、链接器这些就都齐了。另一种选择是 MSYS2对 UNIX 风格命令更友好但配置复杂一些。对绝大多数 AI 项目来说Build Tools 足够也更容易和 pip 配合。4. Docker Desktop给 AI 环境建一条可复现的装配线4.1 安装 Docker Desktop 并选对后端Docker 是 AI 开发环境里最有价值的一环。它可以把 Redis、PostgreSQL、向量数据库、模型推理服务全部打包成容器一条命令启动换机器也不怕环境丢。Windows 下安装 Docker 基本只有一个主流选择Docker Desktop。安装命令winget install Docker.DockerDesktop装完第一次启动会提示选择后端。如果你已经启用了 WSL2建议选择“Use WSL 2 based engine”这样容器跑在 WSL2 的轻量虚拟机里性能和 Linux 环境基本一致。如果没有启用 WSL2也可以选 Windows Hyper-V 后端但我个人更推荐 WSL2原因有两个一是资源占用更小二是能和 WSL 里的 Linux 工具链共享一套 Docker 上下文开发调试链路更短。4.2 镜像加速源配置在国内环境下拉取 Docker Hub 镜像经常很慢。Docker Desktop 提供了配置镜像源的地方在 Settings - Docker Engine 里编辑 JSON{ registry-mirrors: [ https://docker.m.daocloud.io, https://dockerproxy.com, https://docker.mirrors.ustc.edu.cn ] }这里列出的是我实测可用的几个公共镜像加速地址你可以按自己的网络情况调整。配置完成后点击“Apply Restart”再拉镜像试试速度通常会有明显改善。这一个步骤能帮你省下一大把时间千万别跳过。4.3 组建一套标准 AI 中间件容器搭建好 Docker 之后我用它来管理 AI 开发常用的中间件。下面是一个参考的 docker-compose.yml直接保存到你的项目目录里就能用services: redis: image: redis:7.2-alpine container_name: ai-redis ports: - 6379:6379 volumes: - redis-data:/data command: [redis-server, --appendonly, yes] postgres: image: pgvector/pgvector:pg16 container_name: ai-postgres environment: POSTGRES_USER: ai_dev POSTGRES_PASSWORD: ai_dev_password POSTGRES_DB: ai_platform ports: - 5432:5432 volumes: - postgres-data:/var/lib/postgresql/data elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:8.14.0 container_name: ai-es environment: - discovery.typesingle-node - xpack.security.enabledfalse - ES_JAVA_OPTS-Xms2g -Xmx2g ports: - 9200:9200 volumes: - es-data:/usr/share/elasticsearch/data volumes: redis-data: postgres-data: es-data:启动命令docker compose up -d这条命令会同时启动 Redis、带 pgvector 插件的 PostgreSQL、Elasticsearch 三个服务覆盖了大多数 AI 应用所需的缓存、存储和检索能力。pgvector 插件能让 PostgreSQL 当作向量数据库用RAG 项目里非常常见。一个实操经验生产环境不要用latest标签示例里我写了具体版本号这样下次docker compose pull时不会因为大版本升级导致不兼容。5. 本地 AI 服务与中间件Redis、Elasticsearch 和模型推理5.1 Redis 在 Windows 下的正路与岔路Redis 官方其实不提供 Windows 原生版本网上能搜到的“Redis for Windows”基本是第三方移植版比如 tporadowski/redis版本普遍偏老。我的建议是开发环境直接用 Docker 跑 Redis最省事而且和 Linux 生产环境行为一致。如果你因为某些原因不能装 Docker那再考虑 Memurai。它是一个 Redis 兼容的开源 Windows 服务实现支持 Redis 7 的大部分命令API 兼容性不错可以注册成 Windows 服务开机自启。我实测过用它跑一些小规模缓存场景问题不大但如果要用 Lua 脚本或模块建议还是老老实实回 Docker。验证 Redis 是否正常docker exec -it ai-redis redis-cli ping如果返回PONG说明服务正常。Windows 下访问 Redis 也可以直接用代码里的 redis-py 或 Spring Data Redis只要localhost:6379能通就行。5.2 Elasticsearch 的启动与踩坑点搜索和向量检索是 AI 应用的重要基础Elasticsearch 在 Windows 下可以直接跑原生版本。先确认 JDK 环境然后去官网下载 Windows zip 包解压后进入bin目录执行elasticsearch.bat8.x 版本默认绑定了 JDK 并开启了 HTTPS 和安全认证开发环境建议先关掉这些配置减少折腾。修改config/elasticsearch.ymlxpack.security.enabled: false discovery.type: single-node启动后浏览器访问http://localhost:9200返回cluster_name等信息就说明成功了。这里最典型的坑有三个端口被占用如果 9200 被别的程序占用ES 会启动失败。用netstat -ano | findstr 9200查一下占用进程。内存分配过大默认jvm.options会把堆内存设成物理内存的一半16GB 内存的机器可能直接分配 8GB导致启动缓慢甚至 OOM。建议手动改成-Xms2g -Xmx2g。路径不能有中文或空格ES 对数据目录的路径很敏感解压到带中文的路径可能会导致某些插件异常。建议解压到纯英文路径。5.3 本地模型推理Ollama 与 OpenAI 兼容接口本地跑开源模型是很多 AI 开发者的刚需。我目前最常用的工具是 Ollama它支持 Windows安装包在官网下载即可。装好之后拉取模型ollama pull qwen2.5:14b ollama run qwen2.5:14bOllama 会自动下载模型并启动一个本地服务默认端口是11434。它支持 OpenAI 兼容的 API 接口也就是说你代码里本来调 OpenAI SDK 的地方只需要改一下base_urlfrom openai import OpenAI client OpenAI(base_urlhttp://localhost:11434/v1, api_keyollama) response client.chat.completions.create( modelqwen2.5:14b, messages[{role: user, content: 你好介绍一下你自己}] ) print(response.choices[0].message.content)这个兼容层非常香意味着本地环境和云端 API 可以在代码层面无缝切换。我通常的做法开发调试用 Ollama 本地模型上线切回云端 API只改一个环境变量。如果你要跑更大参数的模型还需要给 Ollama 设置OLLAMA_MODELS环境变量把模型默认存储路径放到一个大分区避免 C 盘被塞满。6. 接入 AI 编程辅助工具链Codex 桌面版与提示词工作流6.1 Codex 的命令行与桌面端安装AI 编程助手现在已经成了日常开发的一部分。以 OpenAI 的 Codex 为例它提供了命令行工具CLI和新版桌面应用Windows 下安装有两种方式。第一种是 CLI 方式要求本机已经装好 Node.js 18然后全局安装npm install -g openai/codex安装完以后执行codex --version第一次运行会让你登录账号完成认证之后在项目目录里启动codex它会读取当前项目的上下文回答你的问题或者直接帮忙写代码、改代码。如果需要把对话和一些指令直接通过命令执行可以:codex exec 帮我给这个项目增加一个 health 检查接口第二种是桌面版适合不熟悉命令行的用户。安装后登录同一个账号在图形界面里选择本地项目目录Codex 会直接读取项目文件结构、定位关键文件然后进行修改。桌面版的可视化 diff 体验很直观我一般先用 CLI 做批量操作用桌面版做代码审查和局部修改。6.2 AI 编程提示词模板我沉淀下来的三段式框架工具装好只是第一步真正拉开效率差距的是提示词的组织。我平时写 AI 编程提示词基本遵循一个“上下文-任务-约束”的三段式框架。上下文部分告诉 AI 这个项目的技术栈和背景例如这是一个基于 FastAPI 的 RAG 服务Python 3.12使用 PostgreSQL pgvector项目结构遵循 src 目录布局。任务部分要非常具体最好能给出输入输出样例请实现一个 /search 接口接收 query 参数先在 pgvector 里做向量检索取 top 5 结果然后用 LLM 生成摘要返回。返回格式为 {results: [{content, score}]}约束部分说明边界比如使用 async/await 风格不要引入新的第三方依赖所有新增依赖必须说明理由。代码放在 src/api/routes/search.py 下。这套模板比直接丢一句“帮我写个接口”有效得多。AI 编程助手本质上还是一个概率模型你给它越清晰的上下文它产出越可靠这个经验适用于任何 AI 编程工具。6.3 其他值得装的 Windows AI 插件VS Code 里我目前必装的三类插件官方 Python 扩展Python、PylanceDocker 扩展以及 GitLens查看代码历史和责任人。这三件套对应了 AI 项目的三个关键场景改 Python 代码、管理容器、查历史变更。另外如果你的项目用 Jupyter Notebook 做实验建议给 VS Code 装 Jupyter 插件直接在 IDE 里跑 cell 调试模型比开浏览器顺畅很多。我很推荐把 VS Code 的“设置同步”打开用 GitHub 账号同步配置和插件列表换机器时一条命令复现开发环境。这其实也是“AI 编程环境”的一部分——你的工具链越一致AI 辅助工具的上下文越稳定。7. 全链路验证与 Windows 特有坑位的排查记录7.1 一张自检清单快速判断环境是否搭好环境搭建完成后我习惯按下面这张清单跑一遍每个命令能返回预期结果才说明这步真的没有问题层验证命令预期结果Pythonpython --versionPython 3.12.8或对应版本虚拟环境uv venv .venv .\.venv\Scripts\activate命令行提示符前出现(.venv)Node.jsnode -v npm -v输出对应版本Dockerdocker info --format {{.ServerVersion}}输出 Docker 版本Redisdocker exec -it ai-redis redis-cli pingPONGElasticsearchcurl http://localhost:9200返回 JSON 节点信息Ollamaollama list列出已拉取模型Codexcodex --version输出版本号建议把这份清单存在笔记里每次换电脑或重装系统后照跑一遍。排查问题时也能快速定位是哪个环节断了。7.2 Windows 下三个高频“坑位”及完整排查思路坑位一命令执行后提示“不是内部或外部命令”这个报错几乎每个 Windows 开发者都遇到。根本原因是命令所在目录没有加入 PATH。我通常按三步排查先确认软件确实装上了比如C:\Program Files\xxx\bin\xxx.exe存在再检查 PATH 环境变量里有没有对应路径最后新开一个终端窗口重新执行。特别提醒修改系统环境变量后已经打开的终端窗口不会自动刷新必须新开。坑位二Python 包安装失败报错信息指向 MSVC前面提到要装 Visual Studio Build Tools就是为了解决这类问题。当你在 Windows 上pip install一个没有预编译 wheel 的包时pip 会尝试调用 MSVC 编译源码没有编译环境就会报Microsoft Visual C 14.0 or greater is required。解决办法打开 “Visual Studio Installer”勾选 “使用 C 的桌面开发”等安装完成后重启终端再试。如果还不行检查是否缺少对应的 Python 调试库可以在 pyenv-win 安装 Python 时勾选“Download debugging symbols”等选项。坑位三本地模型推理时 GPU 显存不足或 OOM跑本地模型最恼火的是刚开始加载模型就把显存吃满然后直接闪退。我的排查思路是这样先用nvidia-smi看空闲显存量再算模型体积。比较靠谱的经验是 7B 参数模型量化后大约需要 5-7GB 显存14B 量化模型大约需要 10GB 以上。如果显存不够优先选择更小的量化版本比如 q4_K_M或者退回到 CPU 推理只是速度慢一些。Ollama 也支持通过OLLAMA_GPU_LAYERS控制多少层放到 GPU 上计算这个参数可以按显存大小灵活调整。7.3 一次真实的环境排障过程上周我在一台新的 Windows 电脑上复现这套环境时代码执行到 Elasticsearch 启动就一直失败。日志显示内存分配错误。我先确认了机器是 16GB 内存而默认 jvm.options 会分配物理内存一半也就是 8GB再叠加 Docker 和 Ollama 吃内存系统直接卡死。排查链路是先看 ES 日志文件logs/elasticsearch.log发现unable to create native threads和内存分配异常再打开jvm.options看到-Xmx8g最后改成-Xmx2g重启后恢复正常。这一步只用了五分钟但如果一开始不去看日志而是反复重启 ES大概率会浪费两三个小时。遇到任何服务启动失败第一件事永远是打开它的日志文件而不是瞎试。还有一个不起眼但容易坑人的点ES 解压到带“中文”或“空格”的路径后某些数据文件相关插件可能报路径错误我习惯把所有开发工具统一放在C:\dev\这种纯英文目录下比如C:\dev\elasticsearch-8.14.0。这套路径规划看似小细节却能避免很多莫名的坑。建议从第一天就养成这个习惯。写在最后的一点体会整套环境搭下来最大的感受是Windows 做 AI 开发不缺能力缺的是规范。Linux 生态之所以让人感觉“专业”是因为大家习惯了用命令行和配置文件管理一切Windows 只要把终端、包管理器、虚拟环境、WSL2/Docker 这几层理顺开发体验完全不输。我个人现在的固定配置就是 Windows 11 Windows Terminal PowerShell 7 pyenv-win/uv Docker Desktop Ollama Codex日常写 AI 应用和本地调试模型都在这一套里面完成。你第一次搭可能会花一天但第二台机器照着这份清单来基本一个小时内就能进入状态。最后再分享一个小习惯把所有个性化的配置文件和 docker-compose 文件纳入一个 Git 仓库换环境时直接git pull就能找回所有开发环境设置这才是环境复用最有价值的一步。