Docker CLI 命令速查表 - Docker 常用命令大全

Docker 日常最常用的命令都在这里了,按镜像、容器、网络、卷、仓库登录、构建调试和 Compose 分组整理,排障现场直接复制改参数即可。

容器与编排·共 52 条命令·最后更新 2026-07-21
返回 容器与编排

镜像 Image 8

docker images
列出本地镜像,加 -a 包含中间层
docker pull nginx:alpine
拉取指定标签镜像,省略标签默认 latest
docker build -t app:1.0 .
用当前目录 Dockerfile 构建并打标签
docker rmi <image>
删除镜像,被容器引用时需先停容器或加 -f
docker tag app:1.0 reg/app:1.0
给镜像打新标签,常用于推送前重命名
docker save -o app.tar app:1.0
导出镜像为 tar,离线传输用
docker load -i app.tar
从 tar 文件导入镜像,常用在离线环境
docker pull alpine:3.20 --platform=linux/amd64
拉取指定平台的镜像,ARM Mac 上拉 amd64 镜像

容器 Container 9

docker ps -a
列出所有容器,含已停止的
docker run -d -p 8080:80 --name web nginx
后台运行并映射端口、命名容器
docker exec -it web sh
进入运行中容器的交互 shell
docker logs -f --tail 100 web
跟踪容器日志最后 100 行
docker stop web && docker rm web
停止并删除容器
docker inspect web
查看容器完整配置 JSON,排查网络/挂载
docker start web && docker restart web
启动或重启已停止的容器
docker stats
实时查看所有容器 CPU/内存/网络 I/O 监控
docker top web
查看容器内运行的进程列表

网络与卷 Network & Volume 8

docker network ls
列出网络,排查容器间访问先看这里
docker network create appnet
创建自定义 bridge 网络,容器可用名字互访
docker network connect appnet web
将运行中的容器连接到指定网络
docker volume ls
列出数据卷
docker run -v data:/var/lib/app app
挂载命名卷做持久化
docker run -v $(pwd):/app app
挂载当前目录到容器,开发常用
docker volume create appdata
创建命名数据卷,用于容器间数据共享
docker volume prune
清理所有未被任何容器使用的数据卷

仓库 Registry 6

docker login
登录 Docker Hub,默认推送前需要认证
docker login registry.example.com
登录私有仓库,支持自建 Harbor/Registry
docker push app:1.0
推送镜像到远程仓库,推送前需先 tag
docker pull ubuntu:22.04
从 Docker Hub 拉取 Ubuntu 22.04 镜像
docker search nginx
搜索 Docker Hub 上的官方镜像,查看可用版本
docker logout
退出当前登录的仓库认证

构建与调试 Build & Debug 7

docker build -t app:1.0 --no-cache .
强制重新构建,不使用缓存层
docker build -t app:1.0 --target=dev .
多阶段构建中只构建到指定阶段
docker history app:1.0
查看镜像构建历史,每层大小和命令
docker diff <container>
查看容器文件系统变化,排查写入了哪些文件
docker cp app.conf web:/etc/nginx/conf.d/
将本地配置文件复制到容器中
docker cp web:/var/log/nginx/access.log ./
从容器中复制日志文件到本地
docker events --since 5m
实时查看 Docker 守护进程事件流,监控容器启停

Compose 与清理 9

docker compose up -d
后台启动 compose 项目
docker compose logs -f svc
跟踪指定服务日志
docker compose down
停止并移除容器、网络,加 -v 连卷一起删
docker compose ps
列出 compose 项目中所有服务的容器状态
docker compose restart
重启 compose 项目中所有或指定服务
docker system df
查看镜像/容器/卷占用磁盘情况
docker system prune -a
清理所有未使用镜像和容器,慎用 -a
docker container prune
清理所有已停止的容器
docker image prune -a
清理所有未被使用的镜像,释放磁盘空间

常见问题 FAQ 5

Q: 如何清理所有未使用的 Docker 资源?
A: docker system prune -a 可清理所有未使用的镜像、容器、网络和构建缓存,加 --volumes 也会清理数据卷。
Q: 如何查看容器日志?
A: docker logs <container> 查看完整日志,加 -f 实时跟踪,--tail 50 只看最后 50 行,--since 5m 看最近 5 分钟。
Q: 如何进入运行中的容器?
A: docker exec -it <container> /bin/bash(或 /bin/sh),退出用 exit 或 Ctrl+D。
Q: 如何将宿主机文件复制到容器?
A: docker cp <src> <container>:<dest>,反向复制用 docker cp <container>:<src> <dest>。
Q: 重启策略有哪些?
A: --restart=no(默认)/on-failure/always/unless-stopped,生产环境常用 unless-stopped。

💡 提示

  • docker run 的 -p 是 主机端口:容器端口,写反了会导致外部访问不到。
  • exec 报 "executable file not found" 时换 sh:alpine 镜像通常没有 bash。
  • prune -a 会删掉所有没有容器在用的镜像,生产机执行前先确认 docker images。
  • docker system df 能快速查看磁盘占用,建议定期执行避免 /var/lib/docker 占满。
  • docker compose restart 比 down/up 更快,但不会重建网络和卷,nginx 改配置后最适用。

官方参考来源

命令整理自以下官方文档,点击核对最新用法。

由 LaoHand 维护

公开更新于 2026年7月21日,内容持续校对官方文档。

发现错误?反馈给我们

命令或描述有误?提交 issue 帮助我们修正。

发现错误?反馈给我们