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
相关推荐
周杰伦_Jay2 小时前
详细介绍:云原生技术细节(关键组成部分、优势和挑战、常用云原生工具)
java·云原生·容器·架构·kubernetes·jenkins·devops
元气满满的热码式3 小时前
K8S中Pod控制器之DaemonSet(DS)控制器
云原生·容器·kubernetes
夏子曦3 小时前
k8s 蓝绿发布、滚动发布、灰度发布
云原生·容器·kubernetes
颜淡慕潇7 小时前
【K8S系列】在 K8S 中使用 Values 文件定制不同环境下的应用配置
云原生·容器·kubernetes·环境配置
旦沐已成舟7 小时前
K8S-Pod的环境变量,重启策略,数据持久化,资源限制
java·docker·kubernetes
github_czy7 小时前
(k8s)k8s部署mysql与redis(无坑版)
redis·容器·kubernetes
超级阿飞7 小时前
利用Kubespray安装生产环境的k8s集群-实施篇
elasticsearch·容器·kubernetes
来恩100314 小时前
Kubernetes学习指南与资料分享
云原生·容器·kubernetes
mumu2lili1 天前
k8s namespace绑定节点
java·容器·kubernetes
Dusk_橙子1 天前
在K8S中,如果后端NFS存储的IP发送变化如何解决?
tcp/ip·容器·kubernetes