Docker 的核心价值,就是把「项目需要的运行环境」打包成一份可复现的配置,换电脑后尽量做到 依赖一致、启动方式一致、少踩「我电脑上能跑」的坑

但它不能 100% 解决「两台电脑完全同一个开发环境」,尤其是 Mac + Windows(这种组合。更准确地说:

Docker 统一的是 项目运行环境; 编辑器、Git、SSH、浏览器插件、系统级工具,还要靠 Git + 文档化配置 来统一。


Docker 能帮你统一什么

能统一不能/很难完全统一
Python / Node 版本Mac 和 Windows 的 Docker 底层不同(Linux 容器 vs WSL2)
数据库(Postgres、Redis、Milvus 等)GUI 软件(Cursor、微信、钉钉)
Agent 后端、API 服务Apple Silicon (M 芯片) vs x86 的镜像兼容
向量库、中间件文件路径、换行符、部分原生库差异
docker compose up 一键起环境GPU/本地大模型推理(Mac 和 Win 差异很大)

对你这种 AI 训练师 / Agent 部署 工作,Docker 很适合管这些:

  • 向量数据库(Milvus / Qdrant / Chroma)

  • Postgres / Redis

  • 自建的 Agent API(FastAPI / Node)

  • Dify、n8n 等可容器化的平台

  • 固定的 Python 依赖(requirements / uv / poetry)


推荐的整体方案(实用、成本低)

1. 代码和配置:用 Git 同步(最重要)

不管 Docker 怎么配,代码仓库必须是中心

公司项目/
├── docker-compose.yml      # 一键起数据库、后端
├── Dockerfile              # Agent/API 运行环境
├── .env.example            # 环境变量模板(不要提交真实密钥)
├── requirements.txt        # 或 pyproject.toml
└── README.md               # 怎么启动、怎么部署
  • 上班 Mac:改代码 → git commitgit push

  • 下班 Win: git pulldocker compose up → 继续开发

公司若用 GitHub / GitLab / Gitee,优先走公司仓库;个人学习项目可放私有仓库。

2. 运行环境:Docker Compose 统一

docker-compose.yml 示例思路:

services:
  api:
    build: .
    ports:
      - "8000:8000"
    env_file: .env
    volumes:
      - .:/app
    depends_on:
      - postgres
      - redis
​
  postgres:
    image: postgres:16
    environment:
      POSTGRES_PASSWORD: dev
    volumes:
      - pgdata:/var/lib/postgresql/data
​
  redis:
    image: redis:7

两台电脑都是:

git pull
docker compose up -d

环境就基本一致了。

3. 编辑器:Cursor / VS Code + Settings Sync

  • CursorVS Code

  • 开启 Settings Sync(账号登录同步插件、快捷键、主题)

  • 项目里放 .vscode/extensions.json,推荐同事/自己装同一套插件

这样「写代码的体验」也能尽量一致,Docker 管不住的部分由编辑器同步补上。

4. Mac 和 Windows 上 Docker 怎么装

电脑安装
Mac(公司)Docker Desktop for Mac
小米 WinDocker Desktop for Windows + 启用 WSL2

注意:Mac 若是 M1/M2/M3,镜像尽量用 linux/arm64 或带 multi-arch 的官方镜像,避免只能跑 x86 的镜像。


针对你岗位的具体建议

数据库 / 知识库(RAG)

  • 开发阶段:Docker 跑 Postgres + pgvector,或 Milvus / Qdrant

  • 数据:不要把真实客户数据放进 Git

  • .env 区分「公司 Mac」和「家里 Win」的连接地址

  • 大体积数据用 导出脚本 + 网盘/内网 同步,或只同步脱敏样本

Agent 部署

常见两种路径:

  1. 低代码平台(Dify、扣子、百炼等)

    • 配置在平台里,代码同步价值不大

    • 重点是文档化:Prompt、知识库结构、API Key 管理方式

  2. 自建 Agent(Python + LangGraph 等)

    • 非常适合 Docker + Git

    • 公司 Mac 开发 → 推到测试环境 → 同事验收

同事需求 / 内部工具

  • 小脚本、爬虫、Excel 处理:可以 Docker 化,也可以直接用 Python venv + requirements.txt

  • 若只是简单脚本,Docker 有时偏重;Git + 固定 Python 版本 往往够用

  • 一旦涉及数据库、Agent、长期跑的服务,再上 Docker


还需要统一的几件事(Docker 不管)

  1. Git 账号 / SSH Key 两台电脑各配一次 SSH,或都用 HTTPS + Token。

  2. 环境变量和密钥 .env 不进 Git;用 .env.example 写需要哪些变量,真实值各自本地保存。

  3. Python / Node 版本

    • Python:.python-version + pyenv,或全放进 Docker 里写代码

    • Node:package.json 里写 "engines": { "node": "20.x" }

  4. Cursor Rules / Agent 配置 项目里放 .cursor/rulesAGENTS.md,两台电脑 pull 下来就一致。


一个现实的工作流示例

上班(Mac):

cd ~/work/company-agent
git pull
docker compose up -d
cursor .
# 改 Prompt、接 API、测 Agent
git add . && git commit -m "feat: xxx" && git push

下班(小米 Win):

cd D:\dev\company-agent
git pull
docker compose up -d
cursor .
# 继续改或学习

两边看到的:同一套代码、同一套数据库容器、同一套启动命令


需要知道的限制

  1. Docker 不是虚拟机 不能指望「Mac 里整个系统原样搬到 Win」;统一的是 容器里的 Linux 环境

  2. 本地跑大模型 Mac 用 Ollama 很方便;Windows 也能装,但体验和性能不同。 若 Agent 主要调 云端 API(OpenAI、通义、DeepSeek),两边差异不大。

  3. 公司 Mac 可能有权限限制 装 Docker Desktop、改系统设置可能要 IT 或老板同意;先问清楚能不能装、能不能访问 Docker Hub。

  4. 外贸公司数据安全 客户资料、报价、合同 不要 放到个人 GitHub 公开库;用公司私有仓库,或只在家做 脱敏后的学习副本


总结:你的理解对不对?

你的理解实际情况
Docker 让不同电脑环境统一,主要是 项目运行环境
无论哪台电脑都能一样开发基本对,还要配合 Git + 编辑器同步 + .env 规范
适合 AI/Agent/数据库工作很合适,尤其是后端、数据库、Agent 服务

建议优先级:

  1. 先在公司 Mac 上把 Git + Docker Desktop 装好

  2. 当前项目做成 docker-compose + README

  3. 家里 Win 克隆同一仓库,验证 docker compose up 能否跑通

  4. 再考虑 Cursor 同步、Python 版本锁定等细节

更多推荐