首页 > 其他分享 >国内无法下载k8s镜像的解决办法

国内无法下载k8s镜像的解决办法

时间:2023-08-20 16:34:21浏览次数:68  
标签:解决办法 k8s mirrorgooglecontainers scheduler 镜像 kube 下载

关于通过各种方法下载k8s相关镜像的方法总结如下:

1.使用Azure中国镜像站,目前限制只能“Azure China IP”可用,不再对外提供服务,此路不通。

2.直接使用mirrorgooglecontainers用户同步到DockerHub的镜像。

用户mirrorgooglecontainers在DockerHub上同步了一些相应的google镜像,可以直接使用,当然安全性无法保证。

# 下载mirrorgooglecontainers用户同步的etcd镜像
docker pull mirrorgooglecontainers/etcd-amd64:3.2.18

# 下载mirrorgooglecontainers用户同步的kube-scheduler镜像
docker pull mirrorgooglecontainers/kube-scheduler-s390x:v1.13.12

如果需要搜索更过的镜像,比如我需要在DockerHub上搜索用户mirrorgooglecontainers上传的kube-apiserver镜像,就输入关键字mirrorgooglecontainers/kube-apiserver进行搜索。
通过这种方式下载的镜像可能需要重新打tag才能使用,如下示例:

# 对下载的google镜像重新打tag才能被正常使用
# 对镜像mirrorgooglecontainers/kube-scheduler-s390x:v1.13.12打tag为:k8s.gcr.io/kube-scheduler-s390x:v1.13.12
docker tag mirrorgooglecontainers/kube-scheduler-s390x:v1.13.12 k8s.gcr.io/kube-scheduler-s390x:v1.13.12

3.使用国内的镜像仓库,这种方式本质上跟方法2相同,只不过使用的是国内的镜像仓库。

# 从阿里云Docker镜像仓库下载用户google_containers同步的Google镜像
# 阿里云镜像仓库不支持搜索指定用户的镜像
docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.2

4.自己有一台国外的服务器,先在服务器上下载k8s镜像,再上传到DockerHub,然后从DockerHub下载到本地(这一步可以通过设置Docker加速器解决),最后再通过重新打tag的方式将下载的镜像命名为对应的k8s原始镜像名称。

5.使用github构建,再使用阿里云镜像进行同步,最后从阿里云镜像仓库下载,具体实现步骤参考利用阿里云下载国外镜像,国内顺畅下载k8s.gcr.io的镜像。当然,这一步可能需要使用魔法才能正常访问到Github。而且对于个人版本有配额限制。

方法4和方法5都是自己去下载镜像,所以镜像的安全性能得到保证。

【参考】
failed to pull image k8s.gcr.io/kube-controller-manage
常用镜像仓库
K8S(kubernetes)镜像源
使用重新打 tag 的方式,拉取 k8s.gcr.io 的镜像
Docker 国内仓库和镜像

标签:解决办法,k8s,mirrorgooglecontainers,scheduler,镜像,kube,下载
From: https://www.cnblogs.com/nuccch/p/17644196.html

相关文章

  • 16张图了解k8s网络
    玩转Kubernetes网络:16张图带你从小白到专家云原生百宝箱 奇妙的Linux世界 2023-08-0808:13 发表于重庆收录于合集#Kubernetes274个#开源453个#云计算91个#Docker197个公众号关注 「奇妙的Linux世界」设为「星标」,每天带你玩转Linux!UnderlayNetwork......
  • VS2015项目.net-framework-4.5.2升级或新建项目无法选择framework 4.6.2(解决办法)
    VS2015里面没有.NETFramework4.6.2VS2015默认安装的目标框架最高是.NETFramework4.6.1,但是我的项目里面某些NuGet软件包更新需要依赖.NETFramework4.6.2,项目就需要升级到目标框架.NETFramework4.6.2VS2015项目无法选择framework4.6.2的解决办法:第一步:系统环境安装.NET......
  • 以二进制文件安装K8S之高可用部署架构
    在Kubernetes系统中,Master节点扮演着总控中心的角色,通过不间断地与各个工作节点(Node)通信来维护整个集群的健康工作状态,集群中各资源对象的状态则被保存在etcd数据库中。在正式环境中应确保Master的高可用,并启用安全访问机制,至少包括以下几方面。Master的kube-apiserver、kube-c......
  • 以二进制文件安装K8S之创建CA根证书
    为etcd和Kubernetes服务启用基于CA认证的安全机制,需要CA证书进行配置。如果组织能够提供统一的CA认证中心,则直接使用组织颁发的CA证书即可。如果没有统一的CA认证中心,则可以通过颁发自签名的CA证书来完成安全配置。如下以通过颁发自签名的CA证书来完成安全配置。etcd和Kubernet......
  • 以二进制文件安装K8S之环境准备
    为了k8s集群能正常运行,需要先完成4项准备工作:1.关闭防火墙2.禁用SeLinux3.关闭Swap4.安装Docker关闭防火墙#查看防火墙状态getenforce#关闭防火墙,禁用防火墙开机自启动systemctlstopfirewalldsystemctldisablefirewalld禁用SeLinux#临时禁用SeLinux,重启失效......
  • 以二进制文件安装K8S之部署etcd高可用集群
    概述前提条件:已经准备好CA根证书(etcd在制作CA证书时需要CA根证书),并且把CA根证书文件ca.key和ca.crt拷贝到3个etcd节点的/etc/kubernetes/pki目录下。3台主机的IP地址分别为192.168.3.135、192.168.3.136、192.168.3.137。要安装的etcd版本:v3.4.13-linux-amd64。安装etcd下载e......
  • 以二进制文件安装K8S之部署Master高可用集群
    如下以二进制文件方式部署安全的KubernetesMaster高可用集群,具体步骤如下:1.下载Kubernetes服务的二进制文件2.部署kube-apiserver服务3.创建客户端CA证书4.创建客户端连接kube-apiserver服务所需的kubeconfig配置文件5.部署kube-controller-manager服务6.部署kube-schedule......
  • k8s推送代码至gitlab报错error: RPC failed; result=22, HTTP code = 413 fatal: The
    #gitpush-uoriginmainUsernamefor'http://gitlab.wjl.net':rootPasswordfor'http://[email protected]':Countingobjects:1032,done.Deltacompressionusingupto8threads.Compressingobjects:100%(871/871),done.error:R......
  • [超详细] GraalVM打包含有JNI的本地镜像
    GraalVM是一种高性能、多语言通用虚拟机和编译器技术。它由Oracle开发并开源,旨在为不同的编程语言和应用场景提供统一的运行时环境和编译器平台。以下是GraalVM的一些主要特点和功能:多语言支持:GraalVM支持多种编程语言,包括Java、JavaScript(Node.js)、Python、Ruby、R、C......
  • 如何发布一个镜像到私有的docker仓库
    1拉取dockerregistry镜像我们先启动docker服务,然后使用docKerpullregistry拉取一个镜像到本地。2看看这个镜像多大3启动registry启动registry实际上就是启动一个容器,这个registry其实和hub.docker.com是一样的功能,只不过这个私有的registry是供给公司内部使用,不对外访问罢了。使......