docker Cheatsheet
Docker 常用命令速查表
Docker 常用命令一页速查:镜像构建拉取、容器 run/exec/logs、网络与数据卷、Compose 编排以及 system prune 清理孤儿资源等 30+ 高频操作,含关键参数说明与典型排障场景示例。
把 Docker 日常最常敲的命令按镜像、容器、网络、卷、Compose 和清理分组整理,排障现场直接复制改参数即可。
镜像 Image
- 列出本地镜像,加 -a 包含中间层
docker images - 拉取指定标签镜像,省略标签默认 latest
docker pull nginx:alpine - 用当前目录 Dockerfile 构建并打标签
docker build -t app:1.0 . - 删除镜像,被容器引用时需先停容器或加 -f
docker rmi <image> - 给镜像打新标签,常用于推送前重命名
docker tag app:1.0 reg/app:1.0 - 导出镜像为 tar,离线传输用
docker save -o app.tar app:1.0
容器 Container
- 列出所有容器,含已停止的
docker ps -a - 后台运行并映射端口、命名容器
docker run -d -p 8080:80 --name web nginx - 进入运行中容器的交互 shell
docker exec -it web sh - 跟踪容器日志最后 100 行
docker logs -f --tail 100 web - 停止并删除容器
docker stop web && docker rm web - 查看容器完整配置 JSON,排查网络/挂载
docker inspect web
网络与卷 Network & Volume
- 列出网络,排查容器间访问先看这里
docker network ls - 创建自定义 bridge 网络,容器可用名字互访
docker network create appnet - 列出数据卷
docker volume ls - 挂载命名卷做持久化
docker run -v data:/var/lib/app app - 挂载当前目录到容器,开发常用
docker run -v $(pwd):/app app
Compose 与清理
- 后台启动 compose 项目
docker compose up -d - 跟踪指定服务日志
docker compose logs -f svc - 停止并移除容器、网络,加 -v 连卷一起删
docker compose down - 查看镜像/容器/卷占用磁盘情况
docker system df - 清理所有未使用镜像和容器,慎用 -a
docker system prune -a
容易踩的坑
- docker run 的 -p 是 主机端口:容器端口,写反了会导致外部访问不到。
- exec 报 "executable file not found" 时换 sh:alpine 镜像通常没有 bash。
- prune -a 会删掉所有没有容器在用的镜像,生产机执行前先确认 docker images。