你是不是也遇到过这些事儿:换新电脑重装ref="/tag/156/" style="color:#643D3D;font-weight:bold;">开发环境,配 Python 版本、Node 版本、MySQL、Redis,光装依赖就折腾一上午;同事说‘我本地跑得好好的’,结果你 git clone 下来直接报错;或者想试试某个老项目,但系统里已有新版 Node,不敢动——别硬扛了,Docker 就是干这个的。
为什么装机时该顺手装 Docker?
它不替换你本地的开发工具,而是给你开个‘隔离小房间’:Python 2.7 和 3.11 能共存,MySQL 5.7 和 8.0 可同时运行,改错了 rm -rf 一个容器就完事,比删注册表安全多了。对装机新手来说,它比手动编译、改 PATH、装各种 runtime 更省心。
Windows/Mac/Linux 一键装好 Docker Desktop
去官网 docker.com/products/docker-desktop 下对应版本安装包,双击安装(Mac 是拖进 Applications,Windows 默认勾选 WSL2 支持,一路下一步就行)。装完点开终端敲:
docker --version看到类似 Docker version 24.0.7 就算成功。
举个真实例子:秒启一个带 MySQL 的 Flask 开发环境
新建文件夹,放一个 docker-compose.yml:
version: '3.8'
services:
web:
image: python:3.11-slim
volumes:
- .:/app
working_dir: /app
command: python app.py
ports:
- "5000:5000"
depends_on:
- db
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: devpass
MYSQL_DATABASE: myapp
ports:
- "3306:3306"
volumes:
- mysql-data:/var/lib/mysql
volumes:
mysql-data:
再写个极简 app.py(就 5 行):
from flask import Flask
app = Flask(__name__)
@app.route('/')
def hello():
return "Hello from Docker! DB ready?"
if __name__ == '__main__':
app.run(host='0.0.0.0:5000', debug=True)
终端里 cd 进文件夹,执行:
docker compose up -d等几秒,浏览器打开 http://localhost:5000,页面出来了——后端、数据库全活了,连 pip install 都不用手动跑。
不想写配置?直接拉现成的开发镜像
比如前端同学要搭 Vue 项目,不用装 node、npm、vue-cli 全套,直接:
docker run -it --rm -v $(pwd):/src -w /src -p 8080:8080 node:18 npx create-vue@latest回车交互几步,项目就初始化好了。后续启动:docker run -it --rm -v $(pwd):/app -w /app -p 5173:5173 -e NODE_ENV=development node:18 npm run dev本地浏览器访问 http://localhost:5173,热更新照常,代码还在你硬盘上,完全不影响你用 VS Code 编辑。
装机时多做这一步,以后少踩十次坑
装完系统,别急着装各种 IDE 插件和语言环境。先装 Docker,把常用组合(Python+PostgreSQL、PHP+Apache+Redis、Go+MongoDB)做成几个 yml 文件存桌面。下次重装或帮朋友配机,复制粘贴,docker compose up 一下,环境齐活。不是炫技,是让开发回归写代码本身。