关注「WeiyiGeek」公众号

设为「特别关注」每天带你玩转网络安全运维、应用开发、物联网IOT学习!


本章目录:

  • 0x00 前言简述

  • 0x01 操作实践


原文地址: 如何使用Aliyun容器镜像服务对海外gcr、quay仓库镜像进行镜像拉取构建?关注「WeiyiGeek」公众号设为「特别关注」每天带你玩转网络安全运维、应用开发、物联网IOT学习!本章目,在国内(GFW)搭建k8s集群及其依赖组件间时, 常常会遇到无法下载k8s.gcr.io、quay.io的镜像, 那我们如何解决呢https://mp.weixin.qq.com/s/oQ82YWYRnSIUp-RXLdNS8A


0x00 前言简述

描述: 在国内(GFW)搭建k8s集群及其依赖组件间时, 常常会遇到无法下载k8s.gcr.io、quay.io的镜像, 那我们如何解决呢?
例如, 在K8S集群中部署nfs-subdir-external-provisioner资源清单时报如下错误, 这是由于国内无法访问k8s.gcr.io, 所以无法拉取下载k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2镜像

Error response from daemon: Get https://k8s.gcr.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

那如何畅快的下载:
常用的方式是使用k8s.gcr.io的镜像源, 例如["https://gcr.mirrors.ustc.edu.cn/google-containers/","https://registry.cn-hangzhou.aliyuncs.com/google_containers/"], 但是对于某一些镜像它是没有进行同步的此时我们将无法通过其下载,可能你还会采用一台海外的机器进行git pull、git tag、git push一系列的操作将k8s.gcr.io、quay.io仓库中的镜像传到国内, 但是对于没有海外机器的朋友来说是不是没有办法了。

答案: 当然是否定的,我们可以采用Github仓库中Dockerfile文件与阿里云提供的容器镜像服务(https://www.aliyun.com/product/acr?spm=5176.21213303.1362911.1.3d9153c9zZkQnr&scm=20140722.S_card)进行海外镜像构建,从而拉取构建后公共或者私有镜像。


0x01 操作实践

步骤 01.登录 github.com 创建一个公共仓库(如果没有请注册), 此处我创建了一个 imagesbuild 仓库,专门用于构建 k8s.gcr.io、quay.io 仓库中无法下载的镜像,此处以 nfs-subdir-external-provisioner 镜像为例,在 /sig-storage/nfs-subdir-external-provisioner 目录下创建一个 Dockerfile 文件,其内容如 tee 命令写入所示。

git clone git@github.com:WeiyiGeek/imagesbuild.gitmkdir -vp imagesbuild/sig-storage/nfs-subdir-external-provisionertee imagesbuild/sig-storage/nfs-subdir-external-provisioner/Dockerfile  <<'EOF'
FROM k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2
LABEL MAINTAINER=master@weiyigeeek.top BUILDTYPE=Aliyun
EOFgit add . && git commit -m "nfs-subdir-external-provisioner" && git push

步骤 02.登陆阿里云[https://aliyun.com]控制台并搜索容器镜像服务或者直接访问(https://www.aliyun.com/product/acr?spm=5176.21213303.1362911.1.3d9153c9zZkQnr&scm=20140722.S_card),进入其控制台如下所示:

步骤 03.进入后我们需要先创建名称空间[WeiyiGeek]、之后再进行镜像仓库。

步骤 04.创建镜像仓库,填写的内容如下所示, 名称空间为weiyigeek, 仓库名称为nfs-subdir-external-provisioner, 仓库类型此处选择公开(方便拉取,注意如果是私有包含敏感信息的镜像一定要私有), 在摘要中注明该仓库主要用途。

步骤 05.点击下一步后,选择github代码源,然后选择 WeiyiGeek 再选择 imagesbuild 我们创建的仓库,并勾选[v]海外机器构建。

步骤 06.创建完后将会显示如下界面, 该页面显示创建的镜像仓库的相关信息。

  • 仓库名称 :nfs-subdir-external-provisioner

  • 仓库地域 :华东1(杭州)

  • 仓库类型 :公开

  • 代码仓库 :https://github.com/WeiyiGeek/imagesbuild

  • 公网地址 :registry.cn-hangzhou.aliyuncs.com/weiyigeek/nfs-subdir-external-provisioner

  • 专有网络 : registry-vpc.cn-hangzhou.aliyuncs.com/weiyigeek/nfs-subdir-external-provisioner

  • 经典网络 : registry-internal.cn-hangzhou.aliyuncs.com/weiyigeek/nfs-subdir-external-provisioner

  • 摘要 : mirror k8s.gcr.io/sig-storage/nfs-subdir-external-provisioner:v4.0.2

步骤 07.然后点击左侧【构建】进行添加构建规则,类型选择【Branch】- main, 然后构建上下文目录收设置为【Dockerfile】存放的目录,此处以imagesbuild仓库名称下的目录为根/sig-storage/nfs-subdir-external-provisioner, Dockerfile 就在当前路径之下, 其镜像版本为V4.0.2。

步骤 08.点击【确定】后保存,然后点击进行【立即构建】,构建完成后将会如下图所示:

步骤 09.然后可以从构建日志中发现构建出镜像的下载地址registry.cn-hangzhou.aliyuncs.com/weiyigeek/nfs-subdir-external-provisioner:v4.0.2

步骤 10.最后在k8s节点集群上进行构建的nfs-subdir-external-provisioner镜像拉取测试,。

$ crictl pull registry.cn-hangzhou.aliyuncs.com/weiyigeek/nfs-subdir-external-provisioner:v4.0.2  # Image is up to date for sha256:7ef6786db2b2bacc683b76e05f99ee26c135d975b91dabca83029b62e510be39$ crictl images | grep "nfs-subdir-external-provisioner"# registry.cn-hangzhou.aliyuncs.com/weiyigeek/nfs-subdir-external-provisioner v4.0.2              7ef6786db2b2b 17.9MB

支持, 完美解决国内无法顺畅下载k8s.gcr.io的镜像问题,希望能帮助到大家,谢谢大家支持。

本文至此完毕,更多技术文章,尽情期待下一章节!


原文地址: https://blog.weiyigeek.top/2022/6-1-663.html


 往期相关文章

还不会部署高可用的kubernetes集群?企业DevOps实践之使用kubeadm方式安装高可用k8s集群v1.23.7

实践使用Python编写对行程码图片内容批量识别的API接口

1.还不会部署高可用的kubernetes集群?看我手把手教你使用二进制部署v1.23.6的K8S集群实践(上)

2.还不会部署高可用的kubernetes集群?看我手把手教你使用二进制部署v1.23.6的K8S集群实践(下)


欢迎各位志同道合的朋友一起学习交流,如文章有误请在下方留下您宝贵的经验知识,个人邮箱地址【master#weiyigeek.top】或者个人公众号【WeiyiGeek】联系我。

更多文章来源于【WeiyiGeek Blog 个人博客 - 为了能到远方,脚下的每一步都不能少 】

个人主页: 【 https://weiyigeek.top】

博客地址: 【 https://blog.weiyigeek.top 】

专栏书写不易,如果您觉得这个专栏还不错的,请给这篇专栏 【点个赞、投个币、收个藏、关个注,转个发,留个言】(人间六大情),这将对我的肯定,谢谢!。

  • echo  "【点个赞】,动动你那粗壮的拇指或者芊芊玉手,亲!"

  • printf("%s", "【投个币】,万水千山总是情,投个硬币行不行,亲!")

  • fmt.Printf("【收个藏】,阅后即焚不吃灰,亲!")  

  • console.info("【转个发】,让更多的志同道合的朋友一起学习交流,亲!")

  • System.out.println("【关个注】,后续浏览查看不迷路哟,亲!")

  • cout << "【留个言】,文章写得好不好、有没有错误,一定要留言哟,亲! " << endl;

更多网络安全、系统运维、应用开发、全栈文章,尽在【个人博客 - https://blog.weiyigeek.top】站点,谢谢支持!

帅哥、美女、大佬们点个【赞+在看】吧!

如何使用Aliyun容器镜像服务对海外gcr、quay仓库镜像进行镜像拉取构建?相关推荐

  1. Dockerharbor安装 镜像私有仓库上床和拉取

    Dockerharbor Dockerharbor的安装 1 mkdir -p /dockerharbor 2 tar zxf harbor-offline-installer-v1.9.0-rc1. ...

  2. 基于阿里云容器镜像服务加速K8S镜像下载

    简单说明: 部署K8S最大的难题是镜像下载 可以使用阿里云容器镜像服务由海外机器构建 国内同时可以使用阿里云的镜像加速器加速镜像下载 仅需要将含有相关镜像的Dockerfile提交到阿里云即可 申请云 ...

  3. 将应用制作成镜像发布到服务器k8s上作为容器微服务运行。

    全栈工程师开发手册 (作者:栾鹏) 架构系列文章 首先我们需要在本地docker中调试运行一遍,再发布到k8s上去. 如果需要在本地部署k8s环境,可以使用mimnikube,参考:https://b ...

  4. jib构建镜像(使用阿里云容器镜像服务拉取镜像)

    版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/zhangjingao/article/details/83542452 jib的基本使用(使用阿里云 ...

  5. 【云原生】阿里云容器镜像服务产品ACR EE之国内外场景应用模拟

    目录 一.ACR EE 简介 二.场景需求 三.场景方案架构图 一.ACR EE 简介 面向容器镜像.Helm Chart 等符合 OCI 标准的云原生制品安全托管及高效分发平台. ACR 支持全球同 ...

  6. 通过阿里云镜像服务来拉取国外镜像

    最近在学习Knative的时候遇到了很多镜像无法拉取的问题,导致很多组件无法正常启动.例如gcr.io域名下的镜像就无法拉取,这给工作学习带来了非常的不便,通过查阅资料发现可以通过阿里云镜像服务来拉取 ...

  7. 正式开放 | 阿里云 10 亿级镜像服务正式支持 Helm Charts,云原生交付再加速!

    作者 | 阿里巴巴高级开发工程师 谢于宁(予栖) 2018 年 6 月,Helm 正式加入了 CNCF 孵化项目: 2018 年 8 月,据 CNCF 的调研表明,有百分之六十八的开发者选择了 Hel ...

  8. 金山云容器引擎服务入门指南

    金山云容器引擎服务入门指南 本入门指南介绍如何利用金山云容器引擎服务快速搭建Kubernetes集群,并部署一个Nginx应用和Kubernetes Dashboard服务的过程. 部署架构参考如下: ...

  9. OpenStack(Kilo版本)镜像服务glance的安装部署

    OpenStack镜像服务(glance)允许用户发现.注册和恢复虚拟机镜像.Glance提供Rest API可以查询虚拟机镜像的metadata并且可以获取镜像.通过Glance,虚拟机镜像可以被存 ...

最新文章

  1. win7台式电脑怎么连wifi_win7系统怎么设置WiFi共享
  2. php的memcache和memcached扩展区别
  3. opencv2生成图像的梯度图
  4. python 自学需要多久-怎么自学python,大概要多久?
  5. 本地仓库管理权限问题
  6. 使用 ExecuteMultiple 提高批量数据加载的性能
  7. 95-230-024-源码-WordCount走读-RecordWriterOutput 和 RecordWriter
  8. 搜索场景下的智能实体推荐
  9. 全网最好用的关键词的组合软件使用教程可排列组合随机生成
  10. mysql可视化工具选型
  11. SIM868 GPS模块指令中文解释
  12. watch 深度监听及立即执行
  13. APP测试:禁止APP登录页面截图解决方法
  14. 阅读笔记4:基于运动想象的脑机接口系统模式识别算法研究
  15. 总结使用Unity 3D优化游戏运行性能的经验
  16. 一些免费的代理服务器
  17. 迅雷该怎么把区块链这件事做好?
  18. 《安富莱嵌入式周报》第275期:2022.07.18--2022.07.24
  19. 回收站文件清理了怎么恢复
  20. 联想笔记本电脑主板分析与维修(型号G50-70M版号NM-A273) 问题:按电源开关不开机无反应,充电指示灯不亮

热门文章

  1. linux 下dump文件放在那里,怎么查看dump文件目录
  2. ORACLE ASSETS 11i资产管理
  3. 人工智能领域的计算机科学,主要包含哪些重要职位?
  4. iPad/iPhone等设备访问Windows共享文件方法
  5. 西北工业大学noj数据结构表达式括号匹配(严3.19)
  6. Mule学习-简单示例
  7. python中级第九课--模块和包(小白piao分享)
  8. E22 LoRa模块透传 定点传输 WOR模式测试与MicroPython应用
  9. 【网络爬虫】初探网络爬虫
  10. 计算机网络培训方案,计算机网络技术 专业培训方案