Docker、ctr、crictl、nerdctl
1. Docker 命令总结
Docker 是一个完整的容器平台,命令最丰富、用户体验友好,适用于开发和CI/CD。
镜像操作
功能 |
命令 |
说明 |
|---|---|---|
拉取镜像 |
|
|
推送镜像 |
|
|
查看镜像列表 |
|
|
删除镜像 |
|
|
导出镜像 |
|
|
导入镜像 |
|
|
查看镜像详情 |
|
|
清理未使用镜像 |
|
容器操作
功能 |
命令 |
说明 |
|---|---|---|
运行容器 |
|
|
查看容器 |
|
|
停止容器 |
|
|
删除容器 |
|
删除前需先停止 |
查看容器详情 |
|
|
查看容器日志 |
|
|
进入容器 |
|
|
查看容器进程 |
|
构建与推送
功能 |
命令 |
说明 |
|---|---|---|
构建镜像 |
|
|
推送镜像 |
|
|
登录仓库 |
|
网络与存储
功能 |
命令 |
说明 |
|---|---|---|
查看网络 |
|
|
创建网络 |
|
|
挂载卷运行 |
|
2. nerdctl 命令总结
nerdctl 旨在为 containerd 提供与 Docker 兼容的命令行体验,是生产环境中替代 Docker CLI 的最佳选择。
镜像操作
功能 |
命令 |
说明 |
|---|---|---|
拉取镜像 |
|
|
推送镜像 |
|
|
查看镜像列表 |
|
|
删除镜像 |
|
|
导出镜像 |
|
|
导入镜像 |
|
|
查看镜像详情 |
|
|
清理未使用镜像 |
|
容器操作
功能 |
命令 |
说明 |
|---|---|---|
运行容器 |
|
|
查看容器 |
|
|
停止容器 |
|
|
删除容器 |
|
|
查看容器详情 |
|
|
查看容器日志 |
|
|
进入容器 |
|
关键优势:在无Docker的K8s节点上进入容器的首选 |
查看容器进程 |
|
构建与推送
功能 |
命令 |
说明 |
|---|---|---|
构建镜像 |
|
需要 buildkit |
推送镜像 |
|
|
登录仓库 |
|
网络与命名空间
功能 |
命令 |
说明 |
|---|---|---|
查看网络 |
|
|
创建网络 |
|
|
挂载卷运行 |
|
|
查看/切换命名空间 |
|
关键:管理K8s容器时必须指定 |
3. ctr 命令总结
ctr 是 containerd 的底层客户端,命令较为原始,适合进行底层调试和排障。
镜像操作
功能 |
命令 |
说明与注意事项 |
|---|---|---|
拉取镜像 |
|
通常需要完整地址 |
推送镜像 |
|
通常需要完整地址 |
查看镜像列表 |
|
|
删除镜像 |
|
|
导出镜像 |
|
|
导入镜像(到K8s空间) |
|
关键:必须用 |
查看镜像信息 |
|
|
清理镜像 |
|
容器操作
功能 |
命令 |
说明 |
|---|---|---|
运行容器 |
|
功能有限,不推荐用于复杂场景 |
查看容器 |
|
|
停止容器(任务) |
|
|
删除容器 |
|
|
查看容器信息 |
|
|
查看容器进程 |
|
其他功能
功能 |
命令 |
说明 |
|---|---|---|
查看任务指标 |
|
查看资源使用 |
查看快照 |
|
查看存储快照 |
命名空间管理
功能 |
命令 |
说明 |
|---|---|---|
查看命名空间 |
|
|
查看K8s容器/任务 |
|
关键:不指定 |
4. crictl 命令总结
crictl 是 Kubernetes CRI(容器运行时接口)的调试工具,专门用于在节点上检查和调试 Kubernetes 创建的 Pod 和容器。
镜像操作
功能 |
命令 |
说明 |
|---|---|---|
拉取镜像 |
|
|
查看镜像列表 |
|
|
删除镜像 |
|
|
清理未使用镜像 |
|
|
查看镜像详情 |
|
容器与Pod操作
功能 |
命令 |
说明 |
|---|---|---|
查看Pod沙盒 |
|
查看节点上的 Pod(沙盒) |
查看所有容器 |
|
包括 pause 容器和应用容器 |
停止容器 |
|
|
删除容器 |
|
|
查看容器详情 |
|
获取容器详细配置和状态 |
查看容器日志 |
|
关键优势:比 |
不支持的功能
不支持:run, exec, build, push, login, 网络/卷管理
它只是一个调试工具,不是完整的运行时客户端。
5. Kubernetes 节点调试常用命令集
在 K8s 节点上,推荐搭配使用 crictl 与 ctr:
目的 |
命令 |
说明 |
|---|---|---|
查看节点上所有 Pod |
|
显示 sandbox 与 Pod 状态 |
查看所有容器 |
|
查看包括 pause 容器在内的所有容器 |
查看容器详细信息 |
|
获取容器运行参数 |
查看容器日志 |
|
比 |
查看 containerd task |
|
containerd 运行时任务列表 |
杀掉异常容器 |
|
强制终止运行任务 |
清理残留容器 |
|
一键清理僵尸容器 |
6. 工具定位与使用场景总结
工具 |
定位 |
典型使用场景 |
|---|---|---|
Docker |
开发环境 / CI/CD |
构建镜像、运行测试容器 |
ctr |
运行时底层调试 |
containerd 运维排障 |
crictl |
K8s 节点调试 |
查看 Pod 容器底层状态 |
nerdctl |
containerd 轻量操作 |
无 Docker 的生产节点运行容器 |