我试图让Jenkins在Docker中运行并运行。我正在使用official repo并提取最新标记。
docker run -u 498 --name awsjenkins -p 8080:8080 -p 50000:50000 -v /mnt/jenkins:/var/jenkins_home jenkins
它开始没问题,但它引发了一个错误:
Apr 26, 2017 9:14:27 PM hudson.model.UpdateCenter updateDefaultSite
WARNING: Upgrading Jenkins. Failed to update the default Update Site 'default'. Plugin upgrades may fail.
java.io.IOException: Server returned HTTP response code: 503 for URL: http://updates.jenkins-ci.org/update-center.json?id=default&version=2.46.2
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1876)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474)
at hudson.model.DownloadService.loadJSON(DownloadService.java:172)
at hudson.model.UpdateSite.updateDirectlyNow(UpdateSite.java:190)
at hudson.model.UpdateCenter.updateDefaultSite(UpdateCenter.java:2197)
at jenkins.install.SetupWizard.init(SetupWizard.java:174)
at jenkins.install.InstallState$3.initializeState(InstallState.java:105)
at jenkins.model.Jenkins.setInstallState(Jenkins.java:1061)
at jenkins.install.InstallUtil.proceedToNextStateFrom(InstallUtil.java:96)
at jenkins.model.Jenkins.<init>(Jenkins.java:951)
at hudson.model.Hudson.<init>(Hudson.java:86)
at hudson.model.Hudson.<init>(Hudson.java:82)
at hudson.WebAppMain$3.run(WebAppMain.java:231)
来自主机的该网址的curl -L
返回301,因此我不认为它是防火墙问题......
我在亚马逊上运行此功能,但我认为这不会导致任何问题。我甚至完全打开安全组只是为了踢,但我仍然得到这个错误。此外,我可以访问詹金斯。但是当我这样做时,它告诉我Jenkins正在脱机。
对此有何想法?
答案 0 :(得分:0)
嗯,希望这可以帮助其他人...感谢Andy的评论,我能够弄清楚。
这里有一些事情要发生。
uid
时,实际上并不创建该组。在Jenkins关于Docker Hub的官方文档中,它说:确保容器中的
/your/home
用户可以访问jenkins
(jenkins用户 - uid 1000)或-u some_other_user
使用docker run
参数。
修复非常简单 - 拉出Dockerfile,修改它以使用本地用户和uid / gid(有几种方法可以做到这一点),然后构建/运行它。