告别「在我电脑上明明能跑」:用 Docker 一键搭建 Python 开发环境
做 Python 开发最让人崩溃的瞬间,往往不是写代码,而是换一台电脑后环境死活配不出来:「我电脑上明明能跑!」依赖版本冲突、系统库缺失、路径问题……Docker 就是来终结这种痛苦的。
一、为什么用 Docker
传统方式是在本机装 Python、装依赖,环境和操作系统深度绑定。Docker 把「操作系统 + Python + 依赖」打包成一个镜像(Image),镜像在任何机器上跑起来都是一模一样的容器(Container)。团队里每人 docker run 同一个镜像,就再也没有「环境不一样」的问题。
二、三步搭建第一个 Python 环境
第一步:拉取官方镜像
docker pull python:3.12-slim
slim 是精简版,体积小、下载快,日常开发足够用。
第二步:写一个 Dockerfile
在项目根目录新建文件 Dockerfile,内容如下:
FROM python:3.12-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
COPY . .
CMD ["python", "app.py"]
第三步:构建并运行
docker build -t my-python-app .
docker run -it --name demo my-python-app
看到程序输出,就说明你的环境已经跑在容器里了。
三、开发期必备小技巧
1. 挂载代码目录:docker run -v $(pwd):/app,本地改代码、容器内实时生效,不用反复 build。
2. 暴露端口:docker run -p 8000:8000,容器里的 Web 服务才能被本机访问。
3. 写 .dockerignore:把 .git、__pycache__、.venv 排除在外,构建更快。
4. pip 换源:在安装命令后加 -i https://pypi.tuna.tsinghua.edu.cn/simple,安装依赖快很多。
四、新手避坑清单
1. 容器停了数据就丢?重要数据一定要用数据卷或挂载目录持久化。
2. 镜像动辄几个 GB?优先选 slim 或 alpine 标签,日常开发完全够用。
3. 磁盘被镜像塞满?定期执行 docker system prune 清理悬空镜像和已停止的容器。
4. 调试进不去?用 docker exec -it demo bash 进入正在运行的容器现场排查。
五、结语
Docker 的学习曲线其实很平缓:记住「镜像是模板、容器是实例」,再掌握 build、run、exec、ps 这几个命令,就能覆盖九成的日常场景。从今天起,把你的 Python 环境装进容器,彻底告别「在我电脑上明明能跑」。
- 点赞
- 收藏
- 关注作者
评论(0)