如何将MicroK8s的containerd.sock设为crictl运行时端点,无需内置工具查看容器镜像
MicroK8s镜像查看、crictl配置及运行时位置说明
容器运行时相关位置
MicroK8s默认采用containerd作为容器运行时,核心路径如下:
- containerd套接字文件:
/var/snap/microk8s/current/run/containerd.sock - containerd配置模板:
/var/snap/microk8s/current/args/containerd-template.toml - 镜像存储目录:
/var/snap/microk8s/common/var/lib/containerd
配置crictl连接MicroK8s的containerd
临时配置(仅当前终端会话生效)
直接设置环境变量,让crictl指向MicroK8s的containerd:
export CONTAINER_RUNTIME_ENDPOINT=unix:///var/snap/microk8s/current/run/containerd.sock export IMAGE_SERVICE_ENDPOINT=unix:///var/snap/microk8s/current/run/containerd.sock
设置完就能用crictl images查看镜像,crictl ps查看运行中容器。
永久配置(所有终端会话生效)
创建或编辑/etc/crictl.yaml文件,写入以下内容:
runtime-endpoint: unix:///var/snap/microk8s/current/run/containerd.sock image-endpoint: unix:///var/snap/microk8s/current/run/containerd.sock timeout: 10 debug: false
保存后重启终端,后续无需再设置环境变量,直接使用crictl即可。
无需MicroK8s内置工具查看镜像
除了crictl,还可以用containerd原生客户端ctr操作:
- 单次命令指定套接字:
ctr --address /var/snap/microk8s/current/run/containerd.sock images list
- 永久设置环境变量,简化命令:
export CONTAINERD_ADDRESS=/var/snap/microk8s/current/run/containerd.sock
之后直接执行ctr images list就能列出所有镜像。
内容的提问来源于stack exchange,提问作者Dan Michael
相关产品推荐
相关产品推荐

