Skip to content

Containerd

Containerd常用操作

containerd Version : 1.6.22

ctrcontainerd 的一个客户端工具。

镜像

Containerd命令示例说明
ctr image lsctr -n k8s.io i ls查看本地镜像
ctr image pullctr image pull docker.io/library/nginx:alpine拉取镜像
ctr image pushctr -n=k8s.io image push --user admin:Harbor12345 10.0.0.4/test/nginx推送镜像
ctr image importctr -n default image import pg_dump.tar - docker.v1.1导入镜像
ctr image exportctr -n default image export coredns.tar coredns:1.2.0导出镜像
ctr image tagctr -n=default image tag docker.io/library/nginx:1.18.0 10.0.0.5:1180/test/nginx:1.18.0打镜像标签
ctr image rmctr -n=default image rm docker.io/rancher/pause:3.1删除镜像
ctr namespaces lsctr namespaces ls查看命名空间
ctr task lsctr task ls查看运行的容器
Containerd命令Docker命令描述
ctr task lsdocker ps查看运行容器
ctr image lsdocker images获取image信息
ctr image pull pausedocker pull pausepull 应该pause镜像
ctr image push pause-testdocker push pause-test改名
ctr image import pause.tardocker load 镜像导入本地镜像
ctr run -d pause-test pausedocker run -d --name=pause pause-test运行容器
ctr image tag pause pause-testdocker tag pause pause-testtag应该pause镜像

查看镜像

bash
ctr -n=k8s.io image list

拉取镜像

bash
ctr -n=default image pull --all-platforms docker.io/library/nginx:1.18.0

导出镜像

bash
ctr -n k8s.io i export k8s_1.26.1.tar registry.aliyuncs.com/google_containers/kube-apiserver:v1.26.1 registry.aliyuncs.com/google_containers/kube-controller-manager:v1.26.1 registry.aliyuncs.com/google_containers/kube-scheduler:v1.26.1 registry.aliyuncs.com/google_containers/kube-proxy:v1.26.1 registry.aliyuncs.com/google_containers/pause:3.9 registry.aliyuncs.com/google_containers/etcd:3.5.6-0 registry.aliyuncs.com/google_containers/coredns:v1.9.3

导入镜像

bash
ctr -n k8s.io i import images/k8s_1.26.1.tar

删除镜像

bash
ctr -n=default image remove docker.io/library/nginx:1.18.0

标签

bash
ctr -n=default image tag docker.io/library/nginx:1.18.0 10.0.0.5:1180/test/nginx:1.18.0

容器

查看容器

list 可以简写为ls

bash
ctr -n k8s.io container ls

查看容器信息

bash
ctr -n k8s.io container info nginx

查看任务

bash
ctr -n k8s.io task ls

进入容器

bash
ctr task exec --exec-id 1 nginx-1 sh

crictl命令

crictldocker注解其他
crictl pulldocker pull拉取镜像
crictl imagesdocker images查看镜像crictl images -q 只打印镜像id
crictl inspectidocker inspect查看镜像详情
crictl rmidocker rmi删除镜像
--docker push推送镜像可使用ctr image push
--docker load/save -i导入/导出镜像可使用ctr images import/export
crictl psdocker ps查看容器
crictl inspectdocker inspect查看容器详情
crictl logsdocker logs查看容器日志
crictl execdocker exec容器内执行命令
crictl statsdocker stats查看容器资源使用情况
crictl createdocker create创建容器
crictl start/stopdocker start/stop启动/停止容器
crictl rmdocker rm删除容器
crictl pods--查看Pod列表
crictl inspectp--查看Pod详情
crictl runp--启动Pod
crictl stopp--停止Pod

crictl 配置

  • crictl 是遵循 CRI 接口规范的一个命令行工具,通常用它来检查和管理kubelet节点上的容器运行时和镜像。

通过配置文件

bash
# 通过在配置文件中设置端点 --config=/etc/crictl.yaml
root@k8s-node-0001:~$ cat /etc/crictl.yaml
runtime-endpoint: unix:///run/containerd/containerd.sock

通过命令

bash
crictl config runtime-endpoint unix:///run/containerd/containerd.sock
crictl config image-endpoint unix:///run/containerd/containerd.sock