从 Docker 命令行映射到 crictl

说明: 本部分链接到提供 Kubernetes 所需功能的第三方项目。Kubernetes 项目作者不负责这些项目。此页面遵循CNCF 网站指南,按字母顺序列出项目。要将项目添加到此列表中,请在提交更改之前阅读内容指南

crictl 是兼容 CRI的容器运行时的一种命令行接口。 你可以使用它来在 Kubernetes 节点上检视和调试容器运行时和应用。 crictl 及其源代码都托管在 cri-tools 仓库中。

本页面提供一份参考资料,用来将 docker 命令行工具的常用命令映射到 crictl 的等价命令。

从 docker 命令行映射到 crictl

映射表格中列举的确切版本是 docker 命令行的 v1.40 版本和 crictl 的 v1.19.0 版本。 这一列表不是完备的。例如,其中并未包含实验性质的 docker 命令。

说明:

crictl 的输出格式类似于 docker 命令行,只是对于某些命令而言会有部分列缺失。 如果你的命令输出会被程序解析,请确保你认真查看了对应的命令输出。

获得调试信息

docker 命令行与 crictl 的映射 - 获得调试信息
docker CLIcrictl描述不支持的功能
attachattach挂接到某运行中的容器—detach-keys, —sig-proxy
execexec在运行中的容器内执行命令—privileged, —user, —detach-keys
imagesimages列举镜像 
infoinfo显示系统范围的信息 
inspectinspect, inspecti返回容器、镜像或任务的底层信息 
logslogs取回容器的日志数据—details
psps列举容器 
statsstats显示容器资源用量统计的动态数据流列:NET/BLOCK I/O、PIDs
versionversion显示运行时(Docker、ContainerD 或其他)的版本信息

执行变更

docker 命令行与 crictl 的映射 - 执行变更
docker CLIcrictl描述不支持的功能
createcreate创建一个新容器 
killstop (超时值为 0)杀死一个或多个运行中的容器—signal
pullpull从某镜像库拉取镜像或仓库—all-tags, —disable-content-trust
rmrm移除一个或者多个容器 
rmirmi移除一个或者多个镜像 
runrun在一个新的容器中执行命令 
startstart启动一个或多个已停止的容器—detach-keys
stopstop停止一个或多个运行中的容器 
updateupdate更新一个或多个容器的配置—restart—blkio-weight 以 CRI 所不支持的资源约束

仅被 crictl 支持的命令

docker 命令行与 crictl 的映射 - 仅被 crictl 支持的命令
crictl描述
imagefsinfo返回镜像文件系统信息
inspectp显示一个或多个 Pod 的状态
port-forward将本地端口转发到 Pod
pods列举 Pod
runp运行一个新的 Pod
rmp删除一个或多个 Pod
stopp停止一个或多个运行中的 Pod