概述
Docker 是一个用于构建、运行和管理容器的自包含运行时环境。
使用方式:
docker [全局选项] 命令 [命令选项]
一、常用命令(Common Commands)
命令 | 说明 |
|---|
run
| 从镜像创建并运行一个新容器 |
exec
| 在运行中的容器内执行命令 |
ps
| 列出容器(默认仅运行中的) |
build
| 从 Dockerfile 构建镜像 |
bake
| 从配置文件(如 docker-bake.hcl)构建镜像 |
pull
| 从镜像仓库下载镜像 |
push
| 将镜像上传到仓库 |
images
| 列出本地镜像 |
login
| 登录到镜像仓库(如 Docker Hub) |
logout
| 退出当前仓库登录 |
search
| 在 Docker Hub 中搜索镜像 |
version
| 显示 Docker 版本信息 |
info
| 显示 Docker 系统级信息 |
二、管理命令(Management Commands)
这些命令用于管理 Docker 的不同资源类型,通常以子命令形式使用(如 docker container ls)。
命令 | 说明 |
|---|
ai*
| Docker AI 助手(Gordon) |
builder
| 管理构建缓存等构建相关设置 |
buildx*
| 高级镜像构建工具(支持多平台等) |
checkpoint
| 管理容器检查点(用于暂停/恢复) |
cloud*
| Docker Cloud 相关操作 |
compose*
| 管理多容器应用(Docker Compose) |
container
| 管理容器(如 ls, stop, rm 等) |
context
| 管理连接上下文(用于切换不同 Docker 主机) |
debug*
| 进入任意镜像或容器的调试 shell |
desktop*
| Docker Desktop 专属命令 |
dev*
| 管理开发环境(Dev Environments) |
extension*
| 管理 Docker 扩展插件 |
image
| 管理镜像(如 ls, rm, tag 等) |
init*
| 为项目生成 Docker 相关的初始化文件(如 Dockerfile、compose.yaml) |
manifest
| 管理镜像清单(Manifest)和多架构镜像列表 |
mcp*
| Docker MCP 插件 |
model*
| Docker 模型运行器(用于 AI/ML 模型) |
network
| 管理网络(创建、删除、查看等) |
plugin
| 管理 Docker 插件 |
sbom*
| 查看镜像的软件物料清单(SBOM) |
scout*
| Docker Scout(镜像漏洞与依赖分析) |
system
| 管理 Docker 系统(如清理、查看磁盘使用) |
trust
| 管理镜像的信任签名 |
volume
| 管理数据卷(持久化存储) |
注:带 * 的命令为实验性或需额外安装插件。
三、Swarm 模式命令(集群管理)
用于 Docker Swarm 集群编排。
命令 | 说明 |
|---|
config
| 管理 Swarm 配置(敏感数据以外的配置) |
node
| 管理 Swarm 节点(工作节点/管理节点) |
secret
| 管理敏感信息(如密码、密钥) |
service
| 管理 Swarm 服务(如部署、扩缩容) |
stack
| 管理多服务应用栈(通过 compose 文件部署) |
swarm
| 初始化或管理 Swarm 集群 |
四、其他命令(Commands)
这些是基础但常用的独立命令。
命令 | 说明 |
|---|
attach
| 将本地终端连接到运行中的容器(STDIN/STDOUT/STDERR) |
commit
| 从容器的更改创建新镜像 |
cp
| 在容器与本地文件系统之间复制文件/目录 |
create
| 创建新容器(但不启动) |
diff
| 查看容器文件系统的变更 |
events
| 实时监听 Docker 事件(如容器启动、镜像拉取) |
export
| 将容器文件系统导出为 tar 归档 |
history
| 显示镜像的构建历史 |
import
| 从 tar 包导入创建镜像 |
inspect
| 查看 Docker 对象(容器、镜像等)的详细信息 |
kill
| 强制终止一个或多个运行中的容器 |
load
| 从 tar 文件或标准输入加载镜像 |
logs
| 获取容器的日志输出 |
pause
| 暂停容器内所有进程 |
port
| 查看容器的端口映射 |
rename
| 重命名容器 |
restart
| 重启一个或多个容器 |
rm
| 删除一个或多个容器 |
rmi
| 删除一个或多个镜像 |
save
| 将一个或多个镜像保存为 tar 归档(默认输出到 STDOUT) |
start
| 启动一个或多个已停止的容器 |
stats
| 实时显示容器资源使用情况(CPU、内存等) |
stop
| 停止一个或多个运行中的容器 |
tag
| 为镜像创建新标签(如 myapp:v1) |
top
| 显示容器内运行的进程 |
unpause
| 恢复被暂停的容器进程 |
update
| 更新容器的配置(如资源限制) |
wait
| 等待容器停止,并返回其退出码 |
五、全局选项(Global Options)
选项 | 说明 |
|---|
--config string
| 客户端配置文件路径(默认:~/.docker) |
-c, --context string
| 指定要使用的连接上下文(覆盖 DOCKER_HOST) |
-D, --debug
| 启用调试模式 |
-H, --host list
| 指定连接的 Docker 守护进程地址(如 tcp://host:2375) |
-l, --log-level string
| 设置日志级别(debug/info/warn/error/fatal) |
--tls
| 启用 TLS 加密通信 |
--tlscacert
| 指定 CA 证书路径 |
--tlscert
| 指定客户端 TLS 证书路径 |
--tlskey
| 指定客户端 TLS 私钥路径 |
--tlsverify
| 启用 TLS 并验证远程主机 |
-v, --version
| 显示版本信息并退出 |
六、获取帮助
查看某个命令的详细用法:
docker 命令 --help
例如:
docker run --help
docker container ls --help
附:常用组合示例
# 运行一个交互式 Ubuntu 容器
docker run -it ubuntu bash
# 查看所有容器(包括已停止的)
docker ps -a
# 构建镜像
docker build -t myapp .
# 复制文件到容器
docker cp ./local.txt container_id:/app/
# 查看容器日志
docker logs my_container
# 删除所有已停止的容器
docker container prune
# 清理未使用的镜像、容器、网络等
docker system prune -a
评论