我问的是如何设置yaml/kubernetes来使用我的Artfiactory来拉动图像.
我是Kubernetes的新手,并已根据本教程成功安装了我在私人计算机上尝试做的事情.
在工作中,我想使用Kubernetes来允许开发人员快速部署和扩展docker镜像,但是我们在隔离的环境中工作.我们有Nginx和Artifactory目前正在与我们的docker客户端合作,如果我手动这样做,可以下载所需的所有图像.
安装Kubernetes和创建/链接pod并发送工作,一切顺利; 但是当我尝试运行selenium-hub-rc.yaml时,当我检查该pod的描述pod时,我会收到错误,
"无法使用ErrImagePull为"POD"启动"Startcontainer":对于registry.access.redhat.com/rhel7/pod-infrastructure,图像拉取失败,这可能是因为此请求中没有凭据.详细信息:(无法ping注册表端点https://registry.access.redhat.com/v0/ \nv2 ping尝试失败,错误:get https://regitry.access.redhat.com/v2:bad request \n v1 ping尝试失败,错误:获取https://registry.access.redhat.com/v1/_ping:错误请求)"
现在我相信这里发生的事情是,对seleium图像的依赖,pod-infrastructure正试图通过公共仓库而不是我的Artifactory仓库下载.
这是我的问题所在,我一直试图找到一种方法,以便我的节点对图像的请求将直接指向我的Artifactory.我目前尝试了很多方法,但都失败了.
这是我正在使用的一些配置.
我的nginx设置为8088正常停靠者请求并将它们转发到名为docker-remote的Artifactory仓库它也设置为在8089上监听registry.access.redhat.com请求并将其转发到红色远程仓库
很明显,我在Docker.io的docker-remote和redhat repo的red-remote上有Docker的Artifactory repo
节点/ pod具有指向red-myproxy.mylab.lab的Hosts文件到nginx代理myproxy.mylab.lab和docker.conf文件以包含
INSECURE_REGISTRY =' - insecure-registry myproxy.mylab.lab:8088'INSECURE_REGISTRY =' - insecure-registry red-myproxy.mylab.lab:8089'
到目前为止一切正常,所以当我去构建图像时,我使用Seleium-hub-rc.yaml来创建docker图像
# selenium-hub-rc.yaml apiVersion: v1 kind: ReplicationController metadata: name: selenium-hub spec: replicas: 1 selector: name: selenium-hub template: metadata: labels: name: selenium-hub spec: containers: - name: selenium-hub image: myproxy.mylab.lab:8088/selenium/hub ports: - containerPort: 4444
多数民众赞成的.我跑了yaml,它给了我那个错误.我已经尝试在docker.conf和fannel.conf中设置代理,看看我是否可以给任何默认请求指向我的repo
HTTP_PROXY = "HTTP://red-proxy.mylab.lab:8089"
但是失败了,我已经尝试弄清楚yaml怎么做但却找不到任何东西,并且想到也许我需要直接编辑硒图像这样做?
我真的很难过这个,但我敢肯定其他人正在使用kunbernetes隔离环境就好并为它试图拉动的docker图像设置多个repo.
感谢您花时间回顾我的问题,希望您能提供帮助!