Docker 容器启动的全方位方法汇总

一、最基础的启动

plain 复制代码
docker run <镜像名>
  • 仅启动容器,不映射端口,不持久化数据
  • 容器退出后数据会丢失

二、后台运行

plain 复制代码
docker run -d <镜像名>
  • -d → detached 模式,后台运行
  • 常用于服务类镜像(MySQL、Redis、Nginx 等)

三、命名容器

plain 复制代码
docker run --name mycontainer <镜像名>
  • 方便管理、停止、删除
  • 例如 docker stop mycontainer

四、端口映射(外部访问)

plain 复制代码
docker run -p <宿主机端口>:<容器端口> <镜像名>
  • Web 服务、数据库必须映射端口
  • 多端口映射示例:
plain 复制代码
docker run -p 8080:80 -p 443:443 nginx

五、数据持久化(卷和目录挂载)

  1. 挂载宿主机目录
plain 复制代码
docker run -v /宿主机路径:/容器路径 <镜像名>

示例:

plain 复制代码
docker run -v /data/mysql:/var/lib/mysql mysql:8.0
  1. Docker 卷
plain 复制代码
docker volume create myvolume
docker run -v myvolume:/容器路径 <镜像名>
  • 卷管理方便,可通过 docker volume ls 查看

六、环境变量配置

plain 复制代码
docker run -e KEY=VALUE <镜像名>
  • 数据库镜像常用:
    • MYSQL_ROOT_PASSWORD
    • MYSQL_DATABASE
    • MYSQL_USER
    • MYSQL_PASSWORD
  • Web 服务镜像常用:
    • TZ(时区)
    • APP_ENV、DEBUG 等自定义变量

七、重启策略

plain 复制代码
docker run --restart <策略> <镜像名>
  • no → 不自动重启(默认)
  • always → 容器停止或 Docker 重启都会自动启动
  • unless-stopped → 除非手动停止,否则自动启动
  • on-failure[:最大重试次数] → 出错自动重启

八、交互模式(进入容器)

plain 复制代码
docker run -it <镜像名> /bin/bash
  • -it → 交互模式 + 分配伪终端
  • 适用于调试、临时测试

九、组合启动示例(生产环境通用模板)

plain 复制代码
docker run -d \
  --name <容器名> \
  -p <宿主端口>:<容器端口> \
  -v <宿主路径>:<容器路径> \
  -e KEY1=VALUE1 -e KEY2=VALUE2 \
  --restart unless-stopped \
  <镜像名>

十、常用容器管理命令

命令 作用
docker ps 查看运行中的容器
docker ps -a 查看所有容器
docker stop <容器> 停止容器
docker start <容器> 启动容器
docker restart <容器> 重启容器
docker rm <容器> 删除容器
docker logs <容器> 查看日志
docker exec -it <容器> <命令> 进入容器或执行命令

十一、镜像管理

命令 作用
docker pull <镜像> 下载镜像
docker images 查看本地镜像
docker rmi <镜像> 删除镜像
docker save -o <文件>.tar <镜像> 导出镜像
docker load -i <文件>.tar 导入镜像
docker tag <镜像> <新镜像> 镜像打标签
docker push <镜像> 推送到仓库

十二、系统信息与清理

命令 作用
docker info 查看 Docker 系统信息
docker version 查看版本
docker system df 查看磁盘占用
docker system prune -a 清理无用镜像、容器、网络

十三、特殊启动选项

需求 参数
限制内存 --memory=1g
限制 CPU --cpus=1.5
设置 hostname --hostname myhost
指定网络 --network mynet
连接多个网络 --network network1 --network network2
临时容器(退出自动删除) --rm

💡 总结:

  • 必需参数:镜像名、端口映射(服务类)、数据卷(持久化)
  • 推荐参数:环境变量、重启策略、容器命名
  • 可选参数:CPU/内存限制、网络配置、调试模式
相关推荐
Canmag 兴隆磁性2 分钟前
磁材包装产线自动化实践:自动定量装袋设备的原理、结构与选型思路
运维·自动化·永磁材料·包装
IDCPDU17 分钟前
PDU 采集断网就丢数据?加一层本地缓存和补传逻辑
运维
云飞云共享云桌面28 分钟前
钣金精密机械工厂:多工程师共享图形服务器,SolidWorks/UG 三维设计兼顾成本与数据安全
运维·服务器·人工智能·自动化·制造
刘胡子大叔34 分钟前
docker build 跑了 92 分钟还是失败了
docker·容器
她说可以呀1 小时前
Docker 镜像的两种创建方式
java·分布式·docker
行者-全栈开发1 小时前
【容器/虚拟化】CVE-2026-53359:Linux KVM Januscape 虚拟机逃逸漏洞修复指南(潜伏16年的云安全噩梦)
linux·运维·服务器·多租户隔离·cve-2026-53359·kvm虚拟机逃逸·shadow mmu
虎头金猫1 小时前
从上传PPT到观众远程打开互动页面:Claper在CentOS 7上的Docker部署、互动组件设置与固定访问地址实战
linux·运维·网络·人工智能·docker·centos·powerpoint
AI备忘录2 小时前
(二十五)华为华三锐捷迈普思科 ERPS 环网保护配置命令(G.8032 五厂商对照)
运维·服务器·网络·网络协议·华为
木由里予2 小时前
NAND 这门生意
运维·服务器·网络·单片机
不会就选b2 小时前
Linux之ip地址<3>
linux·运维·tcp/ip