Docker 常用镜像启动参数对照表

Docker 镜像启动参数对照表

参数类别 参数 MySQL Redis Nginx 任意镜像 说明
容器命名 --name ✅ 推荐 ✅ 推荐 ✅ 推荐 ✅ 推荐 给容器起名字,方便管理
后台运行 -d ✅ 推荐 ✅ 推荐 ✅ 推荐 ✅ 推荐 后台运行容器
端口映射 -p <宿主>:<容器> ✅ 必须(外部访问) ✅ 必须(外部访问) ✅ 必须(Web访问) ✅ 必须(服务暴露端口) 外部访问容器服务
数据卷 -v <宿主>:<容器> ✅ 必须(持久化数据) ✅ 必须(持久化数据) ✅ 推荐(挂载静态文件) ✅ 可选 持久化数据或文件挂载
环境变量 -e KEY=VALUE ✅ 必须:MYSQL_ROOT_PASSWORD 推荐:MYSQL_DATABASE, MYSQL_USER, MYSQL_PASSWORD, MYSQL_CHARSET, TZ 推荐:REDIS_PASSWORD, TZ 推荐:TZ 可选:自定义配置 设置容器初始化配置
重启策略 --restart <策略> ✅ 推荐:unless-stopped ✅ 推荐 ✅ 推荐 ✅ 推荐 容器异常/系统重启时自动启动
交互模式 -it ✅ 可选(调试) ✅ 可选(调试) ✅ 可选(调试) ✅ 可选 分配伪终端 + 交互模式
临时容器 --rm 可选 可选 可选 可选 容器退出自动删除
CPU/内存限制 --memory / --cpus 可选 可选 可选 可选 资源限制
网络 --network <网络名> 可选 可选 可选 可选 指定容器网络
Hostname --hostname <名称> 可选 可选 可选 可选 容器内主机名
命令覆盖 <命令> 可选:mysql -uroot -p 可选:redis-server /etc/redis/redis.conf 可选:nginx -g 'daemon off;' ✅ 可选 覆盖镜像默认启动命令

MySQL 示例

plain 复制代码
docker run -d \
  --name mysql8 \
  -p 3306:3306 \
  -v /data/mysql:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=root \
  -e MYSQL_DATABASE=parkofficesystem \
  -e MYSQL_USER=park \
  -e MYSQL_PASSWORD=123456 \
  -e MYSQL_CHARSET=utf8mb4 \
  -e TZ=Asia/Shanghai \
  --restart unless-stopped \
  mysql:8.0

Redis 示例

plain 复制代码
docker run -d \
  --name redis8 \
  -p 6379:6379 \
  -v /data/redis:/data \
  -e REDIS_PASSWORD=123456 \
  -e TZ=Asia/Shanghai \
  --restart unless-stopped \
  redis:8.0 \
  redis-server --requirepass 123456

Nginx 示例

plain 复制代码
docker run -d \
  --name nginx \
  -p 80:80 -p 443:443 \
  -v /data/nginx/html:/usr/share/nginx/html \
  -v /data/nginx/conf:/etc/nginx/conf.d \
  -e TZ=Asia/Shanghai \
  --restart unless-stopped \
  nginx:latest

任意镜像启动模板

plain 复制代码
docker run -d \
  --name <容器名> \
  -p <宿主端口>:<容器端口> \
  -v <宿主目录>:<容器目录> \
  -e KEY1=VALUE1 -e KEY2=VALUE2 \
  --restart unless-stopped \
  <镜像名> \
  <覆盖命令>
  • 根据镜像文档填充环境变量和挂载路径
  • 覆盖命令可选,如果需要调试或修改启动方式

使用技巧

  1. 数据持久化:MySQL、Redis 必须挂载数据卷,否则数据容器删除就丢失
  2. 初始化配置:环境变量方便一次性创建数据库/用户/密码
  3. 端口映射:Web 服务和数据库都要映射,便于宿主机和局域网访问
  4. 日志查看
plain 复制代码
docker logs -f <容器名>
  1. 进入容器
plain 复制代码
docker exec -it <容器名> bash
相关推荐
我想发发发2 小时前
Linux实现虚拟串口通信-socat
linux·运维·服务器
济6172 小时前
linux 系统移植(第五期)--Uboot移植(4)--在U-Boot 中添加自己的开发板(4) -其他需要修改的地方-- Ubuntu20.04
linux·运维·服务器
老顾聊技术2 小时前
“Anthropic 最新发布的 AI Skills:赋能任务自动化与跨领域应用“
运维·人工智能·自动化
令狐少侠20112 小时前
Linux 系统部署夜莺 nightingale 监控公司的watchdog
linux·运维·服务器
db_cy_20623 小时前
Docker+Kubernetes企业级容器化部署解决方案(阶段一)
docker·容器·kubernetes·云计算·负载均衡·运维开发
百度Geek说3 小时前
百度流式计算开发平台的降本增效之路
运维·云原生
e***98573 小时前
MobaXterm全能运维实战指南
运维
王同学 学出来3 小时前
vue+nodejs项目在服务器实现docker部署
服务器·前端·vue.js·docker·node.js
last demo3 小时前
docker容器
运维·docker·容器