Kubelet containerd 管理命令 ctr常用操作

镜像常用操作

1. 拉取镜像

ctr images pull docker.io/library/nginx:alpine
指定平台

  • --all-platforms:所有平台(amd64 、arm、386 、ppc64le 等),不加的话下载当前平台架构

  • --platform:指定linux/amd64平台

复制代码
ctr images pull --all-platforms docker.io/library/nginx:alpine
ctr images pull --platform linux/amd64 docker.io/library/nginx:alpine

2. 查看镜像

  • 查看镜像可以使用 i 简写或者image

  • -q 只打印镜像名称

bash 复制代码
ctr images list
 
ctr i ls
 
ctr i ls -q

3. 检测镜像

查看其中的 STATUS,complete 表示镜像是完整可用的状态

bash 复制代码
ctr images check

4. 挂载镜像

把已下载的容器镜像挂载至当前文件系统,是为了方便查看镜像中包含的内容

bash 复制代码
ctr images mount docker.io/library/nginx:alpine /tmp
 
ls -lh /tmp
 
ctr images unmount /tmp

5. 导入导出镜像

导出

  • 同时导出可以使用--platform导出其它平台的(例如arm)

  • --all-platforms为导出所有平台

bash 复制代码
ctr image export --all-platforms mynginx.tar docker.io/library/nginx:alpine

导入

bash 复制代码
ctr images import mynginx.tar
 
ctr images import --all-platforms mynginx.tar

导入可能会出现类似于 ctr: content digest sha256:xxxxxx not found 的错误,要解决这个办法需要 pull 所有平台镜像。

bash 复制代码
ctr i pull --all-platforms docker.io/library/nginx:alpine
 
ctr i export --all-platforms mynginx.tar docker.io/library/nginx:alpine
 
ctr i rm docker.io/library/nginx:alpine
 
ctr i import mynginx.tar

6. 删除镜像

bash 复制代码
ctr images rm docker.io/library/nginx:alpine

7. 给镜像打标签

bash 复制代码
ctr images tag docker.io/library/nginx:alpine docker.io/bongmu/nginx:alpine

8. 推送镜像

bash 复制代码
ctr images push  docker.io/bongmu/nginx:alpine
 
ctr images push --user admin:xx docker.io/bongmu/nginx:alpine

命名空间常用操作

containerd相比于docker,多了namespace概念,每个image和containe都会在各自的namespace下可见

bash 复制代码
ctr namespace -h
NAME:
   ctr namespaces - Manage namespaces
 
USAGE:
   ctr namespaces command [command options] [arguments...]
 
COMMANDS:
   create, c   Create a new namespace
   list, ls    List namespaces
   remove, rm  Remove one or more namespaces
   label       Set and clear labels for a namespace
 
OPTIONS:
   --help, -h  show help

1. 查看命名空间

bash 复制代码
ctr namespaces ls

2. 创建一个名空间

bash 复制代码
ctr namespaces create test

3. 删除命空间

bash 复制代码
ctr namespaces rm test
 
ctr -n test images pull --all-platforms docker.io/library/nginx:alpine

4. 查看命空间的镜像

bash 复制代码
ctr images ls
 
ctr -n test images ls
相关推荐
程序猿阿越10 小时前
从 StatefulSet 到容器挂载:CSI 源码走读
后端·kubernetes·源码阅读
一掬净土13 小时前
kubelet 报错如下:docker does not support reopening container log files
docker·云原生·kubelet·logfiles
weixin_5394467815 小时前
Ubuntu部署Minikube
kubernetes
fb_1234517 小时前
K8s存储与配置核心实战
云原生·容器·kubernetes
A-刘晨阳18 小时前
【云原生】nerdctl 部署及使用指南
运维·docker·kubernetes·云计算·1024程序员节·nerdctl
IT小小猪1 天前
从零搭建K8s 集群
云原生·容器·kubernetes
丨晨 丨2 天前
K8s控制器天团图鉴-五大控制器整活
云原生·容器·kubernetes
无人生还别怕2 天前
如何搭建k8s服务(docker部署)
linux·运维·docker·云原生·容器·kubernetes·openanolisos
小马同学-2 天前
K8s 控制器详解 — Deployment、ReplicaSet、DaemonSet 与 Job
云原生·容器·kubernetes