Docker安装好之后,我们就可以通过docker客户端将指令发送到docker的守护进程(dockerd)。docker的指令一般通过命令提示符或终端发送,这些指令也被称为Docker CLI(Command Line Interface)。
标准用法
Docker CLI的标准用法都是按照如下形式进行:
docker [OPTIONS] COMMAND
docker
:这是执行 Docker 相关操作的命令行命令。在安装了 Docker 的系统中,你可以输入docker
来访问 Docker CLI。
[OPTIONS]
:这是 Docker 命令的可选参数,用于配置 Docker CLI 的行为。例如,你可能想要指定连接到不同的 Docker 守护进程,或者调整命令的输出格式等。选项通常是单个字母的参数,前面有一个短横线(例如-h
表示显示帮助信息),或者是一个单词,前面有两个短横线(例如--help
也表示显示帮助信息)。COMMAND
:这是告诉 Docker CLI 执行的具体操作。Docker 有许多不同的命令,比如run
、pull
、build
、ps
、stop
、rm
等,每个命令都负责不同的任务。例如,docker run
用于启动一个新的容器实例,而docker ps
用于列出所有运行中的容器。
- 在
docker [OPTIONS] COMMAND
之后,通常还会跟随着[ARG...]
,这表示命令可能还需要额外的参数或参数列表来完成其操作。例如,docker run
命令后面需要指定要运行的镜像名称,以及可选的容器配置参数。
下面列出所有的CLI命令,并简述作用。
常用命令
命令 | 描述 |
---|---|
run | 从一个镜像创建并运行一个新容器 |
exec | 在一个运行中的容器中执行一个命令 |
ps | 列出所有的容器 |
build | 根据一个Dockerfile文件生成一个镜像 |
pull | 从一个镜像仓库中下载一个镜像 |
push | 上传一个镜像到一个镜像仓库 |
images | 列出所有的镜像 |
login | 登录到一个镜像仓库 |
logout | 从一个镜像仓库中登出 |
search | 查找一个镜像源 |
version | 显示docker的版本信息 |
info | 显示系统范围内的信息 |
管理命令
命令 | 描述 |
---|---|
builder | 管理构建 |
buildx* | Docker构建工具 |
checkpoint | 管理检查点 |
compose* | Docker编排工具 |
container | 管理容器 |
context | 管理上下文 |
debug* | 获取任何镜像或容器的访问权限 |
dev* | Docker开发环境工具 |
extension* | 管理Docker扩展 |
feedback* | 提供反馈 |
image | 管理镜像 |
init* | 创建Docker相关的启动文件 |
manifest | 管理Docker镜像清单和清单列表 |
network | 管理网络 |
plugin | 管理插件 |
sbom* | 查看基于包的软件物料清单(SBOM)以了解镜像。 |
scout* | Docker Scout工具 |
system | 管理Docker |
trust | 管理对Docker镜像的信任 |
volume | 管理卷 |
Swarm 命令
命令 | 描述 |
---|---|
config | 管理Swarm配置 |
node | 管理Swarm结点 |
secret | 管理Swarm中的敏感信息 |
service | 管理Swarm服务 |
stack | 管理Swarm堆栈 |
swarm | 管理Swarm |
命令
命令 | 描述 |
---|---|
attach | 将本地标准输入、输出和错误流附加到一个正在运行的容器 |
commit | 从容器的更改中创建新镜像 |
cp | 在容器和本地系统之间复制文件或文件夹 |
create | 创建一个新容器 |
diff | 检查容器文件系统上文件或目录的更改 |
events | 从服务器获取实时事件 |
export | 将容器的文件系统导出为 tar 归档文件 |
history | 显示一个镜像的历史 |
import | 从 tar 包导入内容以创建文件系统镜像 |
inspect | 返回有关Docker的低级信息 |
kill | 杀死一个或多个运行中的容器 |
load | 从一个tar包中或标准输入中加载一个镜像 |
logs | 获取容器的日志 |
pause | 暂停一个或多个容器内的所有进程 |
port | 列出容器的端口映射或特定映射 |
rename | 重命名一个容器 |
restart | 重启一个或多个容器 |
rm | 移除一个或多个容器 |
rmi | 移除一个或多个镜像 |
save | 将一个或多个镜像保存到 tar 归档文件中(默认情况下流式传输到标准输出) |
start | 启动一个或多个已停止的容器 |
stats | 显示容器资源使用统计的实时流 |
stop | 停止一个或多个运行中的容器 |
tag | 为一个源镜像创建一个标签 |
top | 显示运行中的容器的进程 |
unpause | 取消暂停一个或多个容器内的所有进程 |
update | 更新一个或多个容器的配置 |
wait | 阻止直到一个或多个容器停止,然后打印它们的退出码 |
全局选项
选项 | 默认 | 描述 |
---|---|---|
–config | /root/.docker windows下C:\\User\\你的用户名\\.docker | 客户端配置文件的位置 |
-c, –context | 用于连接守护进程的上下文名称(覆盖 DOCKER_HOST 环境变量和默认上下文,后者使用 docker context use 设置) | |
-D, –debug | 启动调试模式 | |
-H, –host | 要连接的守护进程套接字 | |
-l, –log-level | info | 设置日志的级别(debug , info , warn , error , fatal ) |
–tls | 使用 TLS;由 –tlsverify 说明 | |
–tlscacert | /root/.docker/ca.pem windows下C:\\User\\你的用户名\\.docker\\ca.pem | 只信任由此 CA 签署的证书 |
–tlscert | /root/.docker/cert.pem windows下C:\\User\\你的用户名\\.docker\\cert.pem | TLS证书文件的路径 |
–tlskey | /root/.docker/key.pem windows下C:\\User\\你的用户名\\.docker\\key.pem | TLS密钥文件的路径 |
–tlsverify | 使用 TLS 并验证远程主机 |
备注
1.执行 ‘docker COMMAND –help’ 可以获得更多的信息
比如不知道ps的作用,可以在命令提示符或终端下输入docker ps –help获得帮助信息。
2.Docker Swarm
Docker Swarm 是 Docker 的原生集群管理和编排工具。它允许您将多个 Docker 主机(物理或虚拟机)作为一个单一的虚拟系统来管理。Swarm 提供了容器调度、服务发现、负载均衡、安全通信等特性,使得用户可以在多个主机上轻松部署和管理分布式应用程序。
使用 Swarm,开发者可以创建一个 Docker 集群(cluster),在这个集群中,Swarm manager 负责协调集群中的所有节点(node),而节点可以是运行 Docker 的任何机器。Swarm manager 接收用户的指令,然后根据这些指令将服务(service)部署到集群中的各个节点上。服务是由一个或多个容器组成的,它们共同工作来实现特定的应用程序功能。
Swarm 使用声明式配置文件来定义应用程序的服务,这使得用户可以非常方便地描述应用程序的期望状态,Swarm 则会自动将当前状态调整为与期望状态一致。此外,Swarm 还支持滚动更新、回滚、扩展和收缩服务等功能,使得应用程序的部署和管理工作变得更加灵活和高效。
1 thought on “【Docker学习】Docker CLI 命令概览”