当前位置:网站首页>企业运维实践-使用Aliyun容器镜像服务对海外gcr、quay仓库镜像进行镜像拉取构建
企业运维实践-使用Aliyun容器镜像服务对海外gcr、quay仓库镜像进行镜像拉取构建
2022-07-27 23:45:00 【51CTO】
WeiyiGeek 每天带你玩转网络安全运维、应用开发、物联网IOT学习!
希望各位看友,助力每一个梦想。

文章目录:
0x00 前言简述
0x01 操作实践
0x00 前言简述
描述: 在国内搭建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镜像
那如何畅快的下载:
常用的方式是使用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 命令写入所示。

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

<br/>
步骤 03.进入后我们需要先创建名称空间[WeiyiGeek]、之后再进行镜像仓库。
<br/>
步骤 04.创建镜像仓库,填写的内容如下所示, 名称空间为weiyigeek, 仓库名称为nfs-subdir-external-provisioner, 仓库类型此处选择公开(方便拉取,注意如果是私有包含敏感信息的镜像一定要私有), 在摘要中注明该仓库主要用途。

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

<br/>
步骤 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

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

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

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

<br/>
步骤 10.最后在k8s节点集群上进行构建的nfs-subdir-external-provisioner镜像拉取测试,。
支持, 完美解决国内无法顺畅下载k8s.gcr.io的镜像问题,希望能帮助到大家,谢谢大家支持。
原文地址: https://blog.weiyigeek.top/2022/6-1-663.html
本文至此完毕,更多技术文章,尽情期待下一章节!
【WeiyiGeek Blog 个人博客 - 为了能到远方,脚下的每一步都不能少 】
欢迎各位志同道合的朋友一起学习交流,如文章有误请在下方留下您宝贵的经验知识!
作者主页: 【 https://weiyigeek.top】
博客地址: 【 https://blog.weiyigeek.top 】
专栏书写不易,如果您觉得这个专栏还不错的,请给这篇专栏 【点个赞、投个币、收个藏、关个注,转个发,留个言】(人间六大情),这将对我的肯定,谢谢!。

更多网络安全、系统运维、应用开发、物联网开发、网络工程、全栈文章,尽在博客之中,谢谢各位看又支持!
边栏推荐
- 腾讯云HiFlow场景连接器
- Cap principle of [distributed development]
- A comprehensive case of crawler learning -- visiting websites
- Lua get started quickly
- 实现OCR语言识别Demo(二)- 图片及识别内容的展现和交互
- 普通设备能不能接入TSN时间敏感网络?
- 爬虫学习的一个综合案例——访问网站
- Article reproduction: super resolution network fsrcnn
- Standing at the crossroads of digital retail transformation, we need to look at it from a new perspective
- Software testing interview question: where do your performance testing requirements come from?
猜你喜欢
随机推荐
S-RPN: Sampling-balanced region proposal network for small crop pest detection
在一个字符串里面统计给定字符串的个数
Hcip day 15
腾讯云HiFlow场景连接器
Custom events
Interview question 01.05. Primary editing
Oracle Rac 集群文件目录迁移
Introduction and configuration of vsftpd
Byte monthly salary 28K, share a wave of my automation testing experience
软件测试面试题:如何发现数据库的相关问题?
Interview question 01.07. rotation matrix
Cross domain requests in nodejs
Lecture 16 of project practice: using the open close principle to realize the commodity price rule engine
梳理 SQL 性能优化,收藏经典!
Software test interview question: what are the performance test indicators?
Develop plug-ins for the recording function of flutter
Software process that testers need to know
Interview question 01.09. string rotation
彻底搞懂kubernetes调度框架与插件
Codeforces暑期训练周报(7.14~7.20)








