来来来,先出题:
Rancher可以快速部署Kubernetes,但其使用的gcr.io上的镜像无法下载怎么办?使用Rancher可以快速部署Kubernetes,但我们需要下载哪些镜像?Rancher支持私有镜像仓库,如何设置呢?




解题思路:


国内网络虽然不能直接访问gcr.io服务器,但是能够访问hub.docker.com镜像仓库,而hub.docker.com能够访问gcr.io服务器。利用这个特性,以及hub.docker.com自身的“Create
Automated
Build”功能,读取github.com代码库上的自定义Dockerfile文件,自动创建部署Kubernetes所需的谷歌镜像。然后设置Rancher中Kubernetes模板,让我们的服务器去hub.docker.com中的私有仓库中拉取镜像。从而完成整个Kubernetes的部署过程。




问题1:谷歌服务器gcr.io上的镜像无法访问怎么办?

《获取 Kubernetes 镜像的方法》http://blog.csdn.net/shida_csdn/article/details/78480241
<http://blog.csdn.net/shida_csdn/article/details/78480241>  这篇文件以及图文并茂的讲解得非常清楚了。




问题2:使用Rancher快速部署Kubernetes需要哪些镜像?

《Rancher v1.6.14部署K8S1.8.5所需的镜像列表》
http://blog.csdn.net/CSDN_duomaomao/article/details/79127856
<http://blog.csdn.net/CSDN_duomaomao/article/details/79127856>   ,本文以1.6.14版本为例。



特别说明:

1、rancher_cn打头的镜像中,tiller这个镜像很特殊,它是kubernetes部署工具 helm的服务端组件,原镜像的全名是
gcr.io/kubernetes-helm/tiller:v2.6.1 ,rancher中国区的私有仓库镜像名称为:

registry.cn-shenzhen.aliyuncs.com/rancher_cn/tiller:v2.6.1




我在Github中私有代码库中的tiller/v2.6.1/Dockerfile文件内容为:

FROM gcr.io/kubernetes-helm/tiller:v2.6.1

MAINTAINER [email protected] <mailto:[email protected]>




2、其他镜像前缀都是gcr.io/google_containers/:

registry.cn-shenzhen.aliyuncs.com/rancher_cn/pause-amd64 3.0

registry.cn-shenzhen.aliyuncs.com/rancher_cn/kubernetes-dashboard-amd64 v1.8.0

registry.cn-shenzhen.aliyuncs.com/rancher_cn/k8s-dns-sidecar-amd64 1.14.5

registry.cn-shenzhen.aliyuncs.com/rancher_cn/k8s-dns-kube-dns-amd64 1.14.5

registry.cn-shenzhen.aliyuncs.com/rancher_cn/k8s-dns-dnsmasq-nanny-amd64 1.14.5

registry.cn-shenzhen.aliyuncs.com/rancher_cn/heapster-influxdb-amd64 v1.3.3

registry.cn-shenzhen.aliyuncs.com/rancher_cn/heapster-grafana-amd64 v4.4.3

registry.cn-shenzhen.aliyuncs.com/rancher_cn/heapster-amd64 v1.4.0

我在Github 中私有代码库中的pause-amd64/3.0/Dockerfile文件内容为:

FROM gcr.io/google_containers/pause-amd64:3.0

MAINTAINER [email protected]

其余的heapster和k8S 打头的镜像也一样,Dockerfile文件非常简单,就是直接引用gcr.io上的镜像。

......




问题3:Rancher中私有仓库如何设置?

《rancher中国区加速安装Kubernetes》
https://anjia0532.github.io/2017/11/13/rancher-k8s-china/
<https://anjia0532.github.io/2017/11/13/rancher-k8s-china/>   

Rancher中Kubernetes模板设置要点:

Private Registry for Add-Ons and Pod Infra Container Image index.docker.io

Image namespace for Add-Ons and Pod Infra Container Image dockermaomao

Image namespace for kubernetes-helm Image dockermaomao

Pod Infra Container Image dockermaomao




运行截图:

01-github内容

02-其中一个镜像的自动创建设置(pause-amd64)

02-其中一个镜像的自动创建设置(kubernetes-dashboard-amd64)

03-如何生成自动创建镜像

03-如何生成自动创建镜像2

03-如何生成自动创建镜像3

03-如何生成自动创建镜像4

04-自动创建后Dockerhub镜像仓库内容

04-自动创建后Dockerhub镜像仓库内容2

05-Rancher中的Kubernetes模板环境设置-关键4个参数

06-使用Rancher部署Kubernetes后,面板中显示,使用的是私有仓库的镜像







01-github内容

<https://img-blog.csdn.net/20180212205651708>

02-其中一个镜像的自动创建设置(pause-amd64)

<https://img-blog.csdn.net/20180212205652946>

02-其中一个镜像的自动创建设置(kubernetes-dashboard-amd64)

<https://img-blog.csdn.net/20180212205654526>

03-如何生成自动创建镜像

<https://img-blog.csdn.net/20180212205656140>

03-如何生成自动创建镜像2

<https://img-blog.csdn.net/20180212205657467>

03-如何生成自动创建镜像3

<https://img-blog.csdn.net/20180212205658263>

03-如何生成自动创建镜像4

<https://img-blog.csdn.net/20180212205658992>




04-自动创建后Dockerhub镜像仓库内容

<https://img-blog.csdn.net/20180212205659962>

04-自动创建后Dockerhub镜像仓库内容2

<https://img-blog.csdn.net/20180212205700893>




05-Rancher中的Kubernetes模板环境设置-关键4个参数

<https://img-blog.csdn.net/20180212205701744>

06-使用Rancher部署Kubernetes后,面板中显示,使用的是私有仓库的镜像

<https://img-blog.csdn.net/20180212205702621>




参考链接:

获取 Kubernetes 镜像的方法:

http://blog.csdn.net/shida_csdn/article/details/78480241
<http://blog.csdn.net/shida_csdn/article/details/78480241>




Rancher v1.6.14部署K8S1.8.5所需的镜像列表:

http://blog.csdn.net/CSDN_duomaomao/article/details/79127856
<http://blog.csdn.net/CSDN_duomaomao/article/details/79127856>




rancher中国区加速安装Kubernetes:

https://anjia0532.github.io/2017/11/13/rancher-k8s-china/
<https://anjia0532.github.io/2017/11/13/rancher-k8s-china/>




rancher安装Kubernetes:

https://anjia0532.github.io/2017/11/10/rancher-k8s/
<https://anjia0532.github.io/2017/11/10/rancher-k8s/>




本文的Github代码:

https://github.com/colindaddy/googlecontainer
<https://github.com/colindaddy/googlecontainer>




本文的dockerhub镜像库:

https://hub.docker.com/u/dockermaomao/ <https://hub.docker.com/u/dockermaomao/>