crictl命令

发布时间 2023-10-23 11:31:58作者: 蕝戀

containerd提供了ctr命令行用于镜像管理容器,但功能比较简单

所以一般会用k8s提供的crictl命令。

该命令的特点是:只要符合K8S的CRI接口的,都可以使用。

另外一点就是,cricrl的命令和docker的命令大部分都很像,学习成本不会很高。

项目地址:https://github.com/kubernetes-sigs/cri-tools/

默认情况下crictl会自动检查当前容器引擎,如果你没设置指定容器引用的RPC就会有一个提示,如下:

[root@k8s-master ~]# crictl images
WARN[0000] image connect using default endpoints: 
[unix:///var/run/dockershim.sock 
 unix:///run/containerd/containerd.sock
 unix:///run/crio/crio.sock 
 unix:///var/run/cri-dockerd.sock
 ].
  As the default settings are now deprecated, you should set the endpoint instead.

如果你不想每次都有上述提示,你可以设置crictl连接指定的容器引擎,如:containerd,修改/etc/crictl.yaml配置文件即可

vim /etc/crictl.yaml

# 添加以下内容:
runtime-endpoint: unix:///run/containerd/containerd.sock
image-endpoint: unix:///run/containerd/containerd.sock
timeout: 10
debug: false

镜像相关功能 Docker crictl
显示本地镜像列表 docker images crictl images
下载镜像 docker pull crictl pull
上传镜像 docker push 无,例如buildk
删除本地镜像 docker rmi crictl rmi
查看镜像详情 docker inspect crictl inspecti
容器相关功能 Docker crictl
显示容器列表 docker ps crictl ps
创建容器 docker create crictl create
启动容器 docker start crictl start
停止容器 docker stop crictl stop
删除容器 docker rm crictl rm
查看容器详情 docker inspect crictl inspect
附加容器 docker attach crictl attach
执行命令 docker exec crictl exec
查看日志 docker logs crictl logs
查看容器资源 docker stats crictl stats
POD 相关功能 Docker Containerd
显示 POD 列表 crictl pods
查看 POD 详情 crictl inspectp
运行 POD crictl runp
停止 POD crictl stopp