Docker常用命令合集:从镜像到编排的高频操作清单
描述
Docker把应用与运行环境封装到容器中,解决了“本地能跑、线上不行”的一致性问题。但在实际开发与运维中,命令数量多、选项细节杂,常见现象是“会用几个命令,却很难系统排障”。本文按实际操作链路整理一套高频命令清单,从镜像拉取到容器排查、从网络连接到多服务编排,帮助你在日常工作中快速定位并执行正确命令。
正文
1. 环境与版本信息
先确认Docker引擎和客户端是否正常,避免后续问题由环境本身引起。
# 查看客户端与服务端版本 |
| 命令 | 作用 | 典型场景 |
|---|---|---|
docker version |
查看Client/Server版本 | 确认API兼容性 |
docker info |
查看运行时信息 | 排查驱动、存储、Cgroup问题 |
docker context ls |
查看上下文 | 切换本地/远程Docker环境 |
2. 镜像管理命令
镜像是容器运行基础,常见操作是搜索、拉取、查看、删除与构建。
# 在镜像仓库搜索nginx相关镜像 |
实践建议:
- 拉取时尽量指定明确标签,避免
latest造成不可预期升级。 - 构建镜像时控制上下文体积,配合
.dockerignore减少传输与缓存失效。 - 推送私有仓库前先执行
docker login,并确认命名空间权限。
3. 容器生命周期命令
开发调试阶段的核心是“创建、启动、观察、进入、停止、删除”。
# 后台启动容器并映射端口 |
常用补充命令:
# 持续跟踪容器日志,最多显示最近200行 |
| 命令 | 核心价值 |
|---|---|
docker logs |
快速定位启动失败、端口占用、配置错误 |
docker exec |
进入容器做在线排障与配置验证 |
docker stats |
实时观察CPU/内存,识别资源异常 |
docker cp |
本地与容器间快速传输文件 |
4. 网络与数据卷命令
容器间通信与数据持久化,是服务可用性的关键基础。
# 列出所有Docker网络 |
使用要点:
- 多容器互联优先使用自定义网络,容器名可直接作为DNS名称访问。
- 数据库、消息队列等状态服务必须挂载数据卷,避免容器删除后数据丢失。
- 清理前先确认数据卷是否仍被引用,避免误删业务数据。
5. 资源清理与故障排查
长时间开发后,未使用资源会持续占用磁盘与缓存,建议定期清理。
# 查看镜像、容器、卷占用的磁盘空间 |
排障高频组合:
# 查看容器状态,确认是否异常退出 |
说明:
docker inspect可查看容器完整配置、网络、挂载与启动参数。docker events适合追踪容器重启、停止、健康检查变更等时间线问题。
6. Docker Compose常用命令
当服务超过1个时,建议使用Compose统一描述和启动。
# 后台启动compose定义的所有服务 |
| 命令 | 作用 |
|---|---|
docker compose up -d |
后台启动所有服务 |
docker compose logs -f |
聚合查看服务日志 |
docker compose exec |
进入指定服务容器 |
docker compose down -v |
停止并删除容器、网络与匿名卷 |
可执行
下面是一组可在本地直接演练的命令,快速覆盖镜像、容器、网络和清理流程。
# 1) 拉取并运行Nginx |
小结
Docker命令学习的关键不是“记全”,而是建立稳定的操作路径:先确认环境,再管理镜像与容器,随后检查网络与数据卷,最后形成可复用的Compose编排与清理习惯。把这套命令清单固化为团队Runbook后,容器故障定位效率和环境交付一致性都会明显提升。
评论


