我正在学习Kubernetes,通过遵循课程,https://www.udemy.com/course/kubernetes-microservices/
当我尝试构建映像时,使用文件https://github.com/fleetman-ci-cd-demo/jenkins,使用minikube的docker守护进程。失败的原因如下
curl:(6)无法解析host: updates.jenkins.io
我也登录到minikube shell并执行ping命令,但是没有成功
ping updates.jenkins.io
PING updates.jenkins.io (52.202.51.185): 56 data bytes
--- updates.jenkins.io ping statistics ---
68 packets transmitted, 0 packets received, 100% packet loss
我可以从minikube shell访问google.com。
请让我知道我该如何解决这个问题?
构建日志
WARN: install-plugins.sh is deprecated, please switch to jenkins-plugin-cli
Creating initial locks...
Analyzing war /usr/share/jenkins/jenkins.war...
Registering preinstalled plugins...
curl: (6) Could not resolve host: updates.jenkins.io
The command '/bin/sh -c /usr/local/bin/install-plugins.sh workflow-aggregator && /usr/local/bin/install-plugins.sh github && /usr/local/bin/install-plugins.sh ws-cleanup && /usr/local/bin/install-plugins.sh greenballs && /usr/local/bin/install-plugins.sh simple-theme-plugin && /usr/local/bin/install-plugins.sh kubernetes && /usr/local/bin/install-plugins.sh docker-workflow && /usr/local/bin/install-plugins.sh kubernetes-cli && /usr/local/bin/install-plugins.sh github-branch-source' returned a non-zero code: 6
我认为是容器连接到互联网有问题。我在Docker中运行Jenkins时遇到了同样的问题。
我用sudo service docker restart
重启Docker,解决了我的问题。
现在如果你关心的是废弃的警告:
WARN: install-plugins.sh is deprecated, please switch to jenkins-plugin-cli
你可以参考Jenkins的Docker镜像指南。开门见路,你需要替换Dockerfile中的RUN命令。例如:
RUN /usr/local/bin/install-plugins.sh < /usr/share/jenkins/ref/plugins.txt
:
RUN jenkins-plugin-cli -f /usr/share/jenkins/ref/plugins.txt
即使使用jenkins-plugin-cli
,我也面临着到达Jenkins插件服务器的类似问题。它显示了
Error getting update center json
在我的例子中,它是用同样的方法解决的,只是重新启动Docker服务。
尝试使用curl
命令,一些网站出于安全原因禁用ping