前言

因为众所周知的原因,在使用Kubernetes和docker的时候会出现一些镜像无法拉取或者速度较慢的情况,错误信息类似以下:

[ERROR ImagePull]: failed to pull image k8s.gcr.io/kube-proxy:v1.17.3: output: Error response from daemon ...
Failed to pull image "quay.io/coreos/flannel:v0.11.0-amd64": rpc error: code = Unknown desc = net/http: request canceled ...

之前一直使用的是Azure中国的镜像,经读者提醒,该镜像站已经不能用了,中科大的也不是很稳定。

接下来记录下使用阿里云从海外构建镜像的过程,虽然麻烦点,是能解决问题。

在阿里云创建镜像仓库

首先进入阿里云的容器镜像服务

我这已经是开通过的界面了,没开通过的什么样已经忘了。

没有创建命名空间的就创建一个,创建好了之后点击“创建仓库镜像”。这里我们拿kube-apiserver做例子。

点击下一步,选择代码源,作者这里用的是GitHub,已经绑定好了。记得勾选“海外机器构建”

准备github仓库

这是我仓库的地址:https://github.com/orccn/kube-dockerfile

仓库的每个目录下都有一个Dockerfile

├── README.md
├── coredns
│   └── Dockerfile
├── etcd
│   └── Dockerfile
├── kube-apiserver
│   └── Dockerfile
├── kube-controller-manager
│   └── Dockerfile
├── kube-proxy
│   └── Dockerfile
├── kube-scheduler
│   └── Dockerfile
└── pause
└── Dockerfile

kube-apiserver/Dockerfile 的内容只有一句话。

FROM k8s.gcr.io/kube-apiserver:v1.17.5

添加规则、构建

仓库准备ok后,创建完成,然后点击进入刚创建的仓库,点击左侧“构建”,然后点击右侧“添加规则”

规则添加完后,点击“立即构建”,可以看到下方的构建日志

到此时为止,一个镜像就已经生成了。然后就是到你需要的地方 docker pulldocker tag

$ docker pull registry.cn-hangzhou.aliyuncs.com/k6s/kube-apiserver:v1.17.5
v1.17.5: Pulling from k6s/kube-apiserver
597de8ba0c30: Pull complete
e13a88fa950c: Pull complete
Digest: sha256:5ddc5c77f52767f2f225a531a257259228d74b32d8aac9cfe087251f998c42f3
Status: Downloaded newer image for registry.cn-hangzhou.aliyuncs.com/k6s/kube-apiserver:v1.17.5
registry.cn-hangzhou.aliyuncs.com/k6s/kube-apiserver:v1.17.5 $ docker tag registry.cn-hangzhou.aliyuncs.com/k6s/kube-apiserver:v1.17.5 k8s.gcr.io/kube-apiserver:v1.17.5

其他的镜像如法炮制。

在Docker配置文件中配置加速器

$ vi /etc/docker/daemon.json  

//添加以下内容
{
"registry-mirrors": ["https://hub-mirror.c.163.com"]
}

Kubernetes搭建过程中使用k8s.gcr.io、quay.io、docker.io的镜像加速的更多相关文章

  1. kubernetes安装过程中遇到问题及解决

    系列目录 根据机器环境的不同,有的可能一次就安装成功,有的则可能遇到各种各样的坑需要排查.建议不熟悉linux的用户使用全新的环境来安装kubernetes.以下记录本人在安装过程中遇到的问题及解决方 ...

  2. Hadoop完全分布式搭建过程中遇到的问题小结

    前一段时间,终于抽出了点时间,在自己本地机器上尝试搭建完全分布式Hadoop集群环境,也是借助网络上虾皮的Hadoop开发指南系列书籍一步步搭建起来的,在这里仅代表hadoop初学者向虾皮表示衷心的感 ...

  3. ELK搭建过程中出现的问题与解决方法汇总

    搭建过程中出现的问题 elasticsearch启动过程中报错[1] ERROR: [1] bootstrap checks failed [1]: the default discovery set ...

  4. Kubernetes集群搭建过程中遇到的问题

    1. 创建Nginx Pod过程中报如下错误: #kubectlcreate -f nginx-pod.yaml Error from server: error when creating &quo ...

  5. Solr环境搭建过程中遇到的问题

    Solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/6.3.0 Solr搭建步骤转自:http://blog.csdn.net/wbcg ...

  6. kakfa源代码开发环境搭建过程中的错误处理

    在window上搭建kafka的源代码开发环境,主要参考如下的blog: http://www.bubuko.com/infodetail-695974.html    << Window ...

  7. CentOs6.8 hadoop集群搭建过程中的问题

    1.Error: Java heap space 网上有很多说是java虚拟机内存不够的,我也试着修改内存大小,但是没起作用,后来发现是文件在传输过程中失真.文件在上传到HDFS后变成乱码,重新上传文 ...

  8. mongodb副本集搭建过程中的问题和解决技巧

    在我以往的认知中,一个系统一旦正式上线,多半不会轻易的迁移服务器,尤其是那种涉及到多个关联应用,涉及到多台硬件服务器的系统,因为这种迁移将是牵一发而动全身的. 但是,却仍然有这种情况存在,就如我这几天 ...

  9. ant design环境搭建过程中遇到的问题--Windows-dva-cli

    基础的此处略去,nodejs和npm是前提. 1.官网介绍的是脚手架工具是antd-init,但是又建议真实项目中用dva-cli,所以博主就直接装的是dva-cli,这里主要是简单介绍下博主在Win ...

随机推荐

  1. springboot的linux-docker部署

    将springboot jar应用打包成镜像并在docker运行成容器 https://blog.csdn.net/keepd/article/details/80569797 Docker安装(De ...

  2. 新服务器搭建-总结: 下载nginx,jdk8,docker-compose编排(安装mysql,redis) 附安装

    三明SEO: 前言 如题, 公司新买了一条4核16G的服务器, 不得不重新搭建环境, 只能一一重来, 做个记录 1.nginx : 手动安装 2.jdk8: 手动安装 3. 安装docker 及doc ...

  3. 实现TabControl 选项卡首个标签缩进的方法

    借用一张网图说明需求 在网上找了一圈,没有找到直接通过API或者重绘TabControl 的解决方法,最后灵机一动想到了一个折(tou)中(lan)的解决办法 Tab1.TabPages.Clear( ...

  4. ionic3 修改打包时 android sdk 路径

    修改 /platforms/android/local.properties 文件

  5. Survey sampling

    Survey sampling \(\bullet\)What is survey sampling?(c.f.census survey)(c.f.:参考,查看,来源于拉丁语) \(\bullet\ ...

  6. cesium初探之加载三维模型

    项目需要用到二三维地图切换,本来准备研究ArcGIS js for Web 3d,但考虑到版权的问题,决定试着用cesium来做,于是花了2天时间抱着试试看的心态把cesium从环境配置到加载三维模型 ...

  7. PostgreSQL 安装之 CentOS 7 x64 RPM 安装

    PostgresQL 安装环境 一.CentOS 7 安装 1. 环境说明 CentOS7 PosgreSQL 11.2 2. 在线安装 到目前为止(2019-08-10),CentOS7 默认携带了 ...

  8. windows下面 apache 虚拟主机配置

    <VirtualHost > ServerAdmin www.test2.com DocumentRoot "D:/PHP/Apache/htdocs/testSite2&quo ...

  9. Qt QImage的浅拷贝与深拷贝

    首先简单说说什么是浅拷贝和深拷贝:浅拷贝就比如像引用类型,而深拷贝就比如值类型,即浅拷贝是共用一块内存的,而深拷贝是复制一份内容. 我们再来看看QImage类的几个构造函数: // 浅拷贝 QImag ...

  10. string删除与查找erase,find

    s.erase( 指针位置 , 删除长度 ) 返回值修改后的string对象引用 find(string, int):第一个参数用来指示要查找的字符,第二个参数用来表示从字符串的何处开始查找子串(默认 ...