【注意】最后更新于 December 3, 2019,文中内容可能已过时,请谨慎使用。
docker for mac
安装kubernetes本来是很方便的, 但是国内玩家要折腾一下, 因为 gcr.io
这个域被墙了…
目前来看前辈们已经把坑给淌的差不多了, 我老早的时候也被折腾的头秃, 这里就做个总结
通过代理翻墙下载镜像
这个方法相对来说一劳永逸, 缺点是每个月有vpn的花费, 我代理用的shadowsockets, 就拿这个来举例:
首先安装
添加配置:
1
|
vi /usr/local/etc/privoxy/config
|
配置内容:
1
2
|
listen-address 0.0.0.0:8118
forward-socks5 / localhost:1080 .
|
监听本地8118端口, 转发到 localhost:1080, 这也是ss的客户端的转发端口
启动:
1
|
brew services start privoxy
|
转发部分完成, 接下来在 docker for mac
配置
docker for mac
> preferences
> Proxies
> 点击 Manual proxy configuration
Web Server(HTTP)
和 Secure Web Server (HTTPS)
都填入 http://{你机器IP}:8118
比如: ‘http://192.168.110.203:8118’
不能用 127.0.0.1, 因为 docker for mac 启动后, docker 是运行在一个虚拟机中,而不是macOS下, 因此这个地址代表的意义不一样
点保存, 这样就能正常安装k8s了, 可以通过活动监视器看一下他们的流量是否正常
教程来源
自己预先加载一套镜像来
找个目录, 新建 images.properties
1
2
3
4
5
6
7
8
9
10
|
k8s.gcr.io/pause-amd64:3.1=registry.cn-hangzhou.aliyuncs.com/google_containers/pause-amd64:3.1
k8s.gcr.io/kube-controller-manager-amd64:v1.10.3=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-controller-manager-amd64:v1.10.3
k8s.gcr.io/kube-scheduler-amd64:v1.10.3=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler-amd64:v1.10.3
k8s.gcr.io/kube-proxy-amd64:v1.10.3=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-proxy-amd64:v1.10.3
k8s.gcr.io/kube-apiserver-amd64:v1.10.3=registry.cn-hangzhou.aliyuncs.com/google_containers/kube-apiserver-amd64:v1.10.3
k8s.gcr.io/etcd-amd64:3.1.12=registry.cn-hangzhou.aliyuncs.com/google_containers/etcd-amd64:3.1.12
k8s.gcr.io/k8s-dns-sidecar-amd64:1.14.8=registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-sidecar-amd64:1.14.8
k8s.gcr.io/k8s-dns-kube-dns-amd64:1.14.8=registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-kube-dns-amd64:1.14.8
k8s.gcr.io/k8s-dns-dnsmasq-nanny-amd64:1.14.8=registry.cn-hangzhou.aliyuncs.com/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.8
k8s.gcr.io/kubernetes-dashboard-amd64:v1.8.3=registry.cn-hangzhou.aliyuncs.com/google_containers/kubernetes-dashboard-amd64:v1.8.3
|
新建脚本: kubernetes.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#/bin/bash
file="./images.properties"
if [ -f "$file" ]
then
echo "$file found."
while IFS='=' read -r key value
do
#echo "${key}=${value}"
docker pull ${value}
docker tag ${value} ${key}
docker rmi ${value}
done < "$file"
else
echo "$file not found."
fi
|
运行就行
教程来源
k8s-docker-for-mac
找个gcr.io的国内镜像
这个是利用了dockerHub
因为都是国外的, 先让dockerHub
给build一下, 然后直接拉dockerHub
的镜像来迂回一下
Google Container Registry(gcr.io) 中国可用镜像(长期维护)
gcr.io_mirror
基于Docker for macOS的Kubernetes本地环境搭建与应用部署
文章作者
GPF
上次更新
2019-12-03
(2587928)