k8s镜像推送到阿里云,使用ctr推送镜像到阿里云

ctr推送或拉取镜像有几个好处:不需要用仓库名重新命名镜像、不需要使用docker登录(直接指定凭证),免去安装docker。

(crictl不支持镜像推送,但使用起来非常接近docker,拉取镜像或其他操作适合使用)

-n :指定命名空间,不指定默认ctr查看不到k8s镜像,ctr原生和k8s是隔离开来的,要不就使用circtl查看,但是circtl不能推送镜像

java 复制代码
# 查看本地是否存在要推送的镜像
ctr -n k8s.io images ls | grep nginx
java 复制代码
#k8s容器推送镜像到阿里云/或者自己的私有库
ctr -n k8s.io images push   --platform linux/amd64   crpi-xxxx-xxx.aliyuncs.com/namespace/nginx:latest   docker.io/library/nginx:latest   --user xxx:password

详细的参数含义:crictl不能推镜像,目前只能使用docker和ctr推送镜像

python 复制代码
ctr   #containerd 原生工具,containerd是k8s从docker分离出来的容器核心技术,更快

-n k8s.io   #指定镜像k8s隔离的命名空间

--platform  #指定架构版本,不设置架构版本,私有仓库是不支持直接推送索引的

xxxx.com.rep/namespace/nginx:latest    #目标地址aliyun仓库地址/命名空间(推送aliyun镜像必须)/镜像名称 (可以自己命名)

docker.io/library/nginx:latest     #源镜像名称

--user   username:password   #阿里云凭证

附带:ctr 🆚 crictl 核心区别概览

维度 ctr crictl
全称 containerd CLI CRI CLI
设计目标 containerd 的通用命令行工具 Kubernetes CRI 接口的调试工具
遵循标准 containerd 原生 API Kubernetes CRI (Container Runtime Interface)
主要用途 管理 containerd 本身(镜像、容器、快照等) 调试 Kubernetes 节点上的 Pod、容器、镜像
命名空间 默认 default,需手动指定 -n k8s.io 自动使用 k8s.io 命名空间
是否支持 Pod ❌ 不直接支持(实验性 ctr pods ✅ 完全支持
适用环境 任何使用 containerd 的环境 主要用于 Kubernetes 节点
兼容性 仅 containerd 任何 CRI 运行时(containerd, CRI-O)

使用场景建议

场景 推荐工具 原因
调试 Kubernetes Pod 启动失败 crictl 能看 Pod 状态、事件、日志、沙箱容器
查看 kubelet 拉取了哪些镜像 crictl images 直接对应 Kubernetes 视角
手动推送镜像到私有仓库 ctr crictl 不支持 push
导出/导入镜像(类似 save/load) ctr crictl 不支持
直接管理 containerd(无 Kubernetes) ctr 更通用,功能更全
查看容器运行时统计信息 crictl stats 提供 CPU、内存、网络实时数据

总结

ctr crictl
定位 containerd 的"瑞士军刀" Kubernetes 节点的"诊断仪"
类比 就像 docker 之于 Docker 就像 kubectl 之于 API Server
何时用 管理镜像、推送、底层调试 排查 Pod 问题、看日志、查事件
关键参数 -n k8s.io 无需,自动连接 k8s.io
相关推荐
hanxiuchao9 小时前
告别客户端臃肿!网页端 M3U8 播放调试方案,适配全办公场景
运维·python·django·m3u8·m3u8播放
qq_163135759 小时前
Linux 判断是否安装 Conda / Miniconda 完整方法
linux
weixin_307779139 小时前
Linux下Docker Compose里运行Milvus向量数据库故障诊断Shell脚本
linux·运维·数据库·docker·milvus
素心如月桠9 小时前
windows系统使用https://lnmp.org/的LNMP一键安装包,来打开我的服务器Linux
linux·运维·服务器
AOwhisky10 小时前
Linux(CentOS)系统管理入门笔记:第二期核心知识点自测与详解
linux·笔记·centos
运维大师10 小时前
【Linux运维极简教程】03-用户与用户组管理
linux·运维·服务器
Zhu75810 小时前
在Docker环境部署ApacheGuacamole,对接MySQL数据库
运维·docker·容器
Bruce_Liuxiaowei10 小时前
一次内网横向移动实战:从一个 5900 端口到穿越防火墙
运维·网络·安全
云计算-Security10 小时前
同(异)主机 Linux NAT 最佳实践
linux·服务器·网络
章老师说12 小时前
BFE v1.8.3 正式发布:AI网关能力再升级,企业级七层负载均衡持续进化
运维·人工智能·负载均衡