Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Kubernetes k8s从防火墙后面访问图像_Kubernetes_Http Proxy - Fatal编程技术网

Kubernetes k8s从防火墙后面访问图像

Kubernetes k8s从防火墙后面访问图像,kubernetes,http-proxy,Kubernetes,Http Proxy,我正在尝试从http代理后面运行k8s群集。我可以从相应的存储库下载图像,但是当我尝试使用k8s提供相同的图像时,我会得到errImagePull,例如,如果我尝试 kubectl apply -f https://download.elastic.co/downloads/eck/1.5.0/all-in-one.yaml 然后我在pod上得到以下错误 Normal Pulling 37m (x4 over 38m) kubelet Pulling

我正在尝试从http代理后面运行k8s群集。我可以从相应的存储库下载图像,但是当我尝试使用k8s提供相同的图像时,我会得到
errImagePull
,例如,如果我尝试

kubectl apply -f https://download.elastic.co/downloads/eck/1.5.0/all-in-one.yaml
然后我在pod上得到以下错误

 Normal   Pulling    37m (x4 over 38m)      kubelet            Pulling image "docker.elastic.co/eck/eck-operator:1.5.0"
  Warning  Failed     37m (x4 over 38m)      kubelet            Failed to pull image "docker.elastic.co/eck/eck-operator:1.5.0": rpc error: code = Unknown desc = failed to pull and unpack image "docker.elastic.co/eck/eck-operator:1.5.0": failed to resolve reference "docker.elastic.co/eck/eck-operator:1.5.0": failed to do request: Head https://docker.elastic.co/v2/eck/eck-operator/manifests/1.5.0: proxyconnect tcp: dial tcp [::1]:3128: connect: connection refused
  Warning  Failed     37m (x4 over 38m)      kubelet            Error: ErrImagePull
现在,当我直接尝试将docker.elastic.co/eck/eck operator:1.5.0直接拉到盒子上时,效果很好。我想我需要为k8s设置一个http代理,但不知道该怎么做

欢迎提出任何建议。我在linux实例上使用
kind
,并且还配置了
cntlm
,因此我使用localhost:3128作为代理

我还尝试了使用minikube和以下命令

minikube start --docker-env HTTP_PROXY=http://localhost:3128 --docker-env HTTPS_PROXY=http://localhost:3128 --docker-env no_proxy=localhost

我仍然得到相同的错误

假设
本地主机
是Docker运行的
主机
以支持
minikube
kind
基于
Kubernetes
节点,您需要使用
主机.Docker.internal:3128
作为代理,而不是
本地主机:3128
。这是相关的


对于
minikube
host.minikube.internal:3128
也可以使用。更多信息。

谢谢,我用
host.docker.interal:3128
host.minikube.internal:3128
,这两个命令都不起作用,我仍然得到相同的错误。@tmpdev你能取得进展吗?不,没有进展我仍然卡住了,我在聊天中添加了一些附加信息。我希望您将host.minikube.internal添加到no_代理以及用于内部docker网络的CIDR。非常感谢GSSwain在这方面的帮助,我觉得我有一些奇怪的docker版本,它把整件事搞砸了,此外,我不认为我会花更多的时间在这方面,因为我有更紧迫的发展任务。再次感谢你的帮助