1、一般docker-ce部署完crictl就已经安装了,只是没有配置,可以运行但会报错,因为我修改了运行时。如下图
新增配置yaml文件
##vim /etc/crictl.yaml runtime-endpoint: unix:///var/run/containerd/containerd.sock image-endpoint: unix:///var/run/containerd/containerd.sock debug: false pull-image-on-create: false disable-pull-on-run: false
然后可以使用crictl就没有报错了。默认docker的话只会出现警告,不会报错。
2、使用
#获取 Pod 列表
crictl pods
还可以使用 --name 参数获取指定的 Pod
crictl pods --name kube-flannel-ds-mzdgl
也可以根据标签来筛选 Pod 列表
crictl pods --label app=flannel
使用 crictl images 命令可以获取所有的镜像:
crictl images
同样在命令后面可以加上 -v 参数来显示镜像的详细信息:
crictl images -v
获取容器列表
crictl ps
还有更多其他可选参数,可以通过 crictl ps -h 获取,比如显示最近创建的两个容器:
crictl ps -n 2
使用 -s 选项按照状态进行过滤:
crictl ps -s Running
在容器中执行命令
crictl 也有类似 exec 的命令支持,比如在容器 ID 为 c8474738e4587 的容器中执行一个 date 命令:
crictl exec -it c8474738e4587 date
还可以获取容器日志信息:
crictl logs c8474738e4587
和 kubectl logs 类似于,还可以使用 -f 选项来 Follow 日志输出,--tail N 也可以指定输出最近的 N 行日志。
资源统计
使用 crictl stats 命令可以列举容器资源的使用情况:
crictl stats
此外镜像和容器相关的一些操作,比如:
拉取镜像:crictl pull
运行 Pod:crictl runp
运行容器:crictl run
启动容器:crictl start
删除容器:crictl rm
删除镜像:crictl rmi
删除 Pod:crictl rmp
停止容器:crictl stop
停止 Pod:crictl stopp