企业运维实践-使用Aliyun容器镜像服务对海外gcr、quay仓库镜像进行镜像拉取 ...

打印 上一主题 下一主题

主题 540|帖子 540|积分 1620

关注「WeiyiGeek」公众号
设为「特别关注」每天带你玩转网络安全运维、应用开发、物联网IOT学习!
希望各位B友【关注、点赞、评论、收藏、投币】,助力每一个梦想。

文章目录:
0x00 前言简述
0x01 操作实践
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镜像
  1. 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 命令写入所示。
[code]git clone git@github.com:WeiyiGeek/imagesbuild.gitmkdir -vp imagesbuild/sig-storage/nfs-subdir-external-provisionertee imagesbuild/sig-storage/nfs-subdir-external-provisioner/Dockerfile

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

铁佛

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表