Docker Commands
Docker cheatsheet: containers, images, network, volumes
Docker Commands is a free online Command Reference tool. Docker cheatsheet: containers, images, network, volumes Related terms: docker · 容器 · 镜像 · compose · 命令速查 · cheatsheet. Use it on this page without signing in.
59 scripts in total
运行交互式容器
运行一个 Ubuntu 容器并进入交互式终端。--rm 表示退出后自动删除容器,-i 保持标准输入开启,-t 分配伪终端。
后台运行容器
以后台模式运行一个 Nginx 容器,-d 后台运行,-p 把宿主机 8080 映射到容器 80 端口,--name 给容器命名便于引用。
运行带数据卷和环境变量的容器
运行容器并挂载宿主机目录、设置环境变量、限制重启策略。-v 挂载卷,-e 设置环境变量,--restart=unless-stopped 异常退出自动重启。
列出容器
docker ps 默认只列出运行中的容器。-a 列出所有(包括已停止),-q 仅输出容器 ID 方便脚本拼接。
启动 / 停止 / 重启容器
对已存在的容器执行启动、停止、重启。可以用容器名或容器 ID。
删除容器
删除已停止的容器。-f 强制删除运行中的容器(会先停止再删除)。组合命令可批量删除所有已停止容器。
批量删除所有已停止容器
一次性删除所有处于退出状态的容器。docker ps -aq -f status=exited 列出所有已停止容器 ID。
进入运行中的容器
在正在运行的容器中执行命令。最常用于进入容器排查问题:进入 my-nginx 容器并打开 bash。
查看容器日志
查看容器输出日志。-f 实时跟踪(类似 tail -f),--tail 100 只看最后 100 行,--since 30m 只看最近 30 分钟。
查看容器内进程
查看指定容器内正在运行的进程列表,类似在宿主机上执行 top/ps。
实时监控容器资源占用
实时显示所有运行容器的 CPU、内存、网络、磁盘 IO 占用,类似 Linux 的 top 命令。
查看容器详细信息
以 JSON 格式输出容器的完整配置(网络、挂载、环境变量、启动命令等)。常配合 grep/jq 提取需要的信息。
容器与宿主机之间拷贝文件
docker cp 可在容器和宿主机之间双向拷贝文件,无需进入容器。
重命名容器
给已存在的容器改名,不影响容器运行状态。
查看容器端口映射
查看容器对外暴露的端口及宿主机映射关系。
附加到容器主进程
连接到容器的主进程(PID 1)的标准输入输出。注意:Ctrl+C 会同时终止容器。如需安全退出用 Ctrl+P, Ctrl+Q。
把容器提交为新镜像
将容器的当前状态保存为新的镜像。适合临时保存调试结果,正式生产请用 Dockerfile。
列出本地镜像
列出本地所有镜像。-a 包含中间层镜像,--digests 显示镜像摘要。
拉取远程镜像
从 Docker Hub 拉取镜像。可指定 tag(版本),不指定默认 latest。
推送镜像到仓库
把本地镜像推送到镜像仓库(Docker Hub 或私有仓库)。推送前需先登录并用正确的 tag 命名。
构建镜像
根据 Dockerfile 构建镜像。-t 指定名称和 tag,末尾的 . 表示构建上下文为当前目录。
构建时传入构建参数
通过 --build-arg 向 Dockerfile 中的 ARG 传值,用于多环境构建。
给镜像打标签
为一个已有镜像创建新的引用(同一份镜像,多个名字)。常用于给镜像打版本号或仓库前缀。
删除镜像
删除本地镜像。被容器引用的镜像无法直接删除,需先删除相关容器。-f 可强制删除。
查看镜像构建历史
查看镜像每一层的构建指令和大小,便于优化 Dockerfile、定位镜像为何这么大。
导出 / 导入镜像为文件
save 把镜像打包成 tar 文件,load 从 tar 文件恢复镜像。适合内网无仓库环境传递镜像。
搜索 Docker Hub 镜像
在 Docker Hub 搜索公共镜像。--limit 限制返回数量,--filter stars=N 过滤星标数。
列出所有网络
查看 Docker 中所有网络。默认存在 bridge、host、none 三个内置网络。
创建自定义网络
创建一个自定义桥接网络。同一自定义网络中的容器可通过容器名互相解析访问。
删除网络
删除未使用的网络。被容器引用的网络无法删除。
查看网络详情
查看网络的配置和接入该网络的所有容器(含 IP、MAC)。
把容器加入网络
connect 将运行中的容器接入另一个网络,disconnect 从网络断开。一个容器可同时接入多个网络。
列出所有数据卷
查看 Docker 中所有命名数据卷。匿名卷也会列出。
创建命名数据卷
创建一个命名卷用于持久化容器数据,Docker 会管理其存储位置。
删除数据卷
删除未被容器引用的数据卷。注意:删除卷会永久丢失其中数据。
查看数据卷详情
查看数据卷的元信息,最关键的是 Mountpoint(在宿主机上的实际路径)。
清理未使用的数据卷
一次性删除所有未被任何容器引用的数据卷,释放磁盘空间。会永久删除其中的数据。
Node 应用 Dockerfile 基础模板
一个典型的 Node.js 应用 Dockerfile,使用 alpine 基础镜像,安装依赖、拷贝源码、暴露端口、启动应用。
多阶段构建(减小镜像体积)
多阶段构建:第一阶段编译产物,第二阶段只拷贝产物到精简运行镜像,大幅减小最终镜像体积。常用于 Go / 前端打包。
ENTRYPOINT 与 CMD 配合
ENTRYPOINT 固定主程序,CMD 提供可被覆盖的默认参数。这样运行时既能直接启动,也能追加自定义参数。
配置容器健康检查
HEALTHCHECK 让 Docker 周期性检查容器健康状态。--interval 检查间隔,--timeout 超时,--retries 连续失败次数后标记 unhealthy。
.dockerignore 减小构建上下文
在项目根目录创建 .dockerignore,避免把 node_modules、日志、.git 等无关文件发送给 Docker daemon,加速构建、避免缓存失效。
以非 root 用户运行(安全)
默认容器以 root 运行存在安全隐患。创建专用用户并以该用户运行应用,是生产镜像的安全最佳实践。
启动 Compose 服务
根据 docker-compose.yml 启动所有服务。-d 后台运行,--build 强制重新构建镜像。
停止并删除 Compose 服务
停止并删除容器、网络。默认不删数据卷;-v 一并删除数据卷(谨慎),--rmi all 同时删除镜像。
查看 Compose 服务日志
查看所有或指定服务的日志。-f 实时跟踪,--tail 限制行数。
在 Compose 服务中执行命令
在指定的 compose 服务容器中执行命令,等价于 docker exec,但用服务名而非容器名。
查看 Compose 服务状态
列出当前 compose 项目下所有服务容器的运行状态、端口映射。
构建 Compose 服务镜像
只构建镜像不启动容器。--no-cache 禁用缓存强制重新构建每一层。
docker-compose.yml 典型示例
一个典型的 web + db 双服务 compose 文件:web 服务依赖 db,db 用命名卷持久化数据。
重启指定 Compose 服务
只重启某个服务而不影响其他服务,常用于热更新配置后生效。
运行一次性任务
针对某个服务启动一个临时容器运行命令,运行完即退出。--rm 退出后自动删除。常用于迁移、测试、初始化。
查看 Docker 磁盘占用
查看镜像、容器、数据卷、日志各自占用的磁盘空间,定位磁盘满的原因。-v 显示详细信息。
一键清理无用资源
清理所有已停止容器、无用网络、悬空镜像(dangling)、构建缓存。-a 连带删除未被引用的镜像,--volumes 连带删除未使用的卷。
清理悬空镜像
删除没有 tag 的悬空镜像(dangling,通常是重新构建后的旧层)。-a 删除所有未被容器使用的镜像。
清理所有已停止容器
一次性删除所有处于退出状态的容器,不会影响运行中的容器。
清理构建缓存
清理 BuildKit 构建缓存。长时间构建会产生大量缓存,定期清理可释放可观空间。
实时监听 Docker 事件
实时输出 Docker daemon 产生的所有事件(容器启动/停止、镜像拉取等),便于排查自动化问题。
查看 Docker 版本与信息
version 显示客户端/服务端版本,info 显示完整的 Docker daemon 配置和运行环境信息。
使用说明
- 左侧选择命令分类(容器、镜像、网络、数据卷等)
- 在搜索框输入关键词快速定位
- 点击命令卡片展开示例和说明
- 点击「复制」一键复制到终端执行
常见问题
- 红色标签是什么? 标有红色「高危」的命令(如 docker rm -f、docker system prune)会删除容器或清理数据,使用前请确认
- 支持 Compose 吗? 包含 Docker Compose 常用命令,方便多容器编排
- 需要先装 Docker 吗? 命令需复制到已安装 Docker 的环境执行
More Command Reference
View allGit Commands
Git cheatsheet: branch, merge, stash, revert
Linux Commands
Linux ops commands: process, disk, memory, network
Database Commands
MySQL / PostgreSQL / Redis / MongoDB cheatsheet
Curl / HTTP
Curl commands: GET / POST / auth / upload / debug
Vim Commands
Vim cheatsheet: move, edit, search, replace, windows
Kubernetes Commands
kubectl cheatsheet: pods, deployments, services, debugging
Code Snippets
Common code snippets: Python / JS / Go utilities
Nginx Config
Nginx configs: reverse proxy, load balancing, HTTPS, cache
FAQ about Docker Commands
What can Docker Commands do?
Docker Commands is a Command Reference tool. Docker cheatsheet: containers, images, network, volumes You can finish the job on this page.
Who should use Docker Commands?
Anyone handling docker · 容器 · 镜像 · compose · 命令速查 · cheatsheet who does not want to install desktop software can use Docker Commands in the browser.
Is Docker Commands safe? Is my data uploaded?
This tool runs in your browser. We do not collect the content you enter into Docker Commands just because you used it.
What similar tools exist?
Related tools in the same Command Reference group are listed at the bottom of this page.