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
相关推荐
java_cj3 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes
qq_452396233 天前
第十三篇:《K8s 安全基础:RBAC、ServiceAccount、Pod Security》
java·安全·kubernetes
睡不醒男孩0308233 天前
云原生运维实战:高并发架构下的云原生可观测性、韧性降级与自动化干预体系
数据库·kubernetes·高并发·prometheus·devops·sre·缓存调优
qq_452396233 天前
第十四篇:《K8s 网络模型与 CNI 插件(Calico、Flannel、Cilium)》
网络·kubernetes·php
Hadoop_Liang3 天前
Kubernetes 应用 HTTPS 安全访问配置实践
https·kubernetes
java_cj3 天前
从0到1启动kube-apiserver:深入源码解析API Server启动全流程
docker·容器·kubernetes
Hadoop_Liang4 天前
使用Kubernetes Gateway API实现域名访问应用
容器·kubernetes·gateway
java_cj4 天前
深入kubectl create源码:从YAML到Pod的完整链路拆解
运维·云原生·容器·kubernetes
万能的知了4 天前
K8s到底需不需要GPU节点?集群资源分配的底层逻辑
云原生·容器·kubernetes
卧室小白4 天前
K8S基础-控制器&deploy&pod回滚更新&service
docker·容器·kubernetes