docker 命令快速搭建测试环境的核心是单条 docker run 启动服务,需包含 -d、-p、-e、--name 四类关键参数,配合指定版本的官方镜像(如 mysql:5.7.19、redis:7.0.10-alpine、nginx:alpine),30 秒内即可运行 mysql、redis、nginx 等服务。
用 docker 命令快速搭建测试环境,核心是一条 docker run 命令启动服务 + 关键参数精准配置。不需要写 yaml、不依赖 compose,30 秒内就能跑起 mysql、redis、nginx 等常用服务。
选对镜像,直接拉起
官方镜像已预装服务、默认配置合理,优先使用带版本号的稳定标签:
- MySQL:docker pull mysql:5.7.19 或 mysql:8.0.33
- Redis:docker pull redis:7.0.10(alpine 更轻量)
- Nginx:docker pull nginx:alpine
- PostgreSQL:docker pull postgres:14
避免用 latest 标签,防止行为突变;国内用户建议先配置阿里云等镜像加速器,大幅提升拉取速度。
关键参数必须带全
四类参数组合,覆盖绝大多数测试场景:
- -d:后台运行,不占终端
- -p 主机端口:容器端口:如 -p 3306:3306,让本地工具能连上;端口冲突时可改主机端口(如 -p 3307:3306)
-
-e KEY=VALUE:传入初始化参数,例如:
• MySQL:-e MYSQL_ROOT_PASSWORD=123456
• PostgreSQL:-e POSTGRES_PASSWORD=pass -e POSTGRES_DB=testdb - --name 容器名:便于后续管理,比如 --name my-redis
按需加挂载或清理
临时调试可跳过持久化;需要保留数据或自定义配置再加:
- 挂数据卷(推荐):
-v ./mysql-data:/var/lib/mysql(相对路径,自动创建)
或 -v mysql_data:/var/lib/mysql(命名卷,更规范) - 挂配置文件:
-v ./nginx.conf:/etc/nginx/nginx.conf:ro - 快速清理残留:
docker stop my-mysql && docker rm my-mysql
或一键清空所有已停止容器:
docker container prune -f
几个开箱即用的命令示例
复制粘贴即可运行:
- MySQL 5.7 测试库:
docker run -d --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=test -v ./mysql-data:/var/lib/mysql -d mysql:5.7.19 - Redis 内存库:
docker run -d --name redis-test -p 6379:6379 redis:7.0.10-alpine - Nginx 静态服务:
docker run -d --name nginx-test -p 8080:80 -v $(pwd)/html:/usr/share/nginx/html:ro nginx:alpine - Android 模拟器(需 KVM 支持):
docker run -d -p 6080:6080 -e EMULATOR_DEVICE="Nexus 5" -e WEB_VNC=true --device /dev/kvm budtmo/docker-android:emulator_13.0
不复杂但容易忽略











