【问题标题】:How to use proxy in Minikube on Ubuntu VM?如何在 Ubuntu VM 上的 Minikube 中使用代理?
【发布时间】:2019-05-22 12:07:33
【问题描述】:
在 Ubuntu VM(在 Windows 上运行)上,我想安装 Minikube。我的电脑在公司代理后面运行。使用 Proxifier,我设法访问 Internet 并在 Ubuntu 上运行 Docker。不幸的是,Minikube 似乎无法访问互联网...
minikube start
Starting local Kubernetes v1.9.4 cluster...
Starting VM...
Downloading Minikube ISO
无法下载 ISO,但遇到 TLS 握手超时...
【问题讨论】:
标签:
ubuntu
proxy
kubernetes
minikube
【解决方案1】:
您提到您可以使用 Proxifier 建立代理。
因此,您可以尝试这样的方法来强制 Minikube 也使用 Proxifier 代理
export NO_PROXY="$NO_PROXY,192.168.0.0/16" # set the no_proxy env variable in the current shell.
minikube start --docker-env "HTTPS_PROXY=http://proxy:808" --docker-env "HTTP_PROXY=http://proxy:808" --docker-env "NO_PROXY=localhost,127.0.0.1,192.168.0.0/16" # start minikube and pass the same no_proxy setting to docker
将 192.168.0.0/16 指定为不应通过代理的 IP 地址范围,因为这是 minikube 生成其 IP 地址的范围(我认为)(我确定我没有其他任何内容)在那个范围内)
更多详情请参见 Minikube 的 Github issue https://github.com/kubernetes/minikube/issues/2706
【解决方案2】:
Minikube 1.0(2019 年 3 月)现在带有 PR 3834:“自动将代理环境变量传播到 docker env”
目前,我们的文档建议用户使用:
minikube start \
--docker-env=HTTP_PROXY=$HTTP_PROXY \
--docker-env HTTPS_PROXY=$HTTPS_PROXY \
--docker-env NO_PROXY=$NO_PROXY
如果设置了环境变量,这将自动设置--docker-env。
在PR 3835 中实现:“将 HTTP 代理配置从主机连接到 VM 环境”
从环境中检测系统代理配置,并默认将它们插入到 docker env 和 VM 中的/etc/environment。