sockets - docker 运行 Jenkins ,套接字连接超时

标签 sockets docker jenkins firewalld

docker ###

docker pull jenkins/jenkins

docker run -p 8090:8090 -p 50000:50000 -e JAVA_OPTS="-Duser.timezone=Seoul/Asia" jenkins/jenkins:lts

docker 日志
Dec 11, 2018 1:17:23 AM hudson.model.UpdateCenter updateDefaultSite
WARNING: Upgrading Jenkins. Failed to update the default Update Site 'default'. Plugin upgrades may fail.
java.net.SocketTimeoutException: connect timed out
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at sun.security.ssl.SSLSocketImpl.connect(SSLSocketImpl.java:673)
    at sun.net.NetworkClient.doConnect(NetworkClient.java:175)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:463)
    at sun.net.www.http.HttpClient.openServer(HttpClient.java:558)
    at sun.net.www.protocol.https.HttpsClient.<init>(HttpsClient.java:264)
    at sun.net.www.protocol.https.HttpsClient.New(HttpsClient.java:367)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(AbstractDelegateHttpsURLConnection.java:191)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect0(HttpURLConnection.java:1156)
    at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:1050)
    at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:177)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1564)
    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
    at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:263)
    at hudson.model.DownloadService.loadJSON(DownloadService.java:167)
    at hudson.model.UpdateSite.updateDirectlyNow(UpdateSite.java:186)
    at hudson.model.UpdateCenter.updateDefaultSite(UpdateCenter.java:2302)
    at jenkins.install.SetupWizard.init(SetupWizard.java:172)
    at jenkins.install.InstallState$InitialSecuritySetup.initializeState(InstallState.java:166)
    at jenkins.model.Jenkins.setInstallState(Jenkins.java:1054)
    at jenkins.install.InstallUtil.proceedToNextStateFrom(InstallUtil.java:97)
    at jenkins.install.InstallState$Unknown.initializeState(InstallState.java:84)
    at jenkins.model.Jenkins$16.run(Jenkins.java:3221)
    at org.jvnet.hudson.reactor.TaskGraphBuilder$TaskImpl.run(TaskGraphBuilder.java:169)
    at org.jvnet.hudson.reactor.Reactor.runTask(Reactor.java:296)
    at jenkins.model.Jenkins$5.runTask(Jenkins.java:1083)
    at org.jvnet.hudson.reactor.Reactor$2.run(Reactor.java:214)
    at org.jvnet.hudson.reactor.Reactor$Node.run(Reactor.java:117)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

Dec 11, 2018 1:17:23 AM hudson.model.AsyncPeriodicWork$1 run
INFO: Finished Download metadata. 25,476 ms
Dec 11, 2018 1:17:23 AM jenkins.InitReactorRunner$1 onAttained
INFO: Completed initialization
Dec 11, 2018 1:17:23 AM hudson.WebAppMain$3 run
INFO: Jenkins is fully up and running

centOS 7防火墙
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: docker0 enp4s0f0
  sources: 
  services: ssh dhcpv6-client http https
  ports: 77/tcp 80/tcp 443/tcp 3306/tcp
  protocols: 
  masquerade: no
  forward-ports: port=443:proto=tcp:toport=8443:toaddr=
    port=80:proto=tcp:toport=8090:toaddr=
  source-ports: 
  icmp-blocks: 
  rich rules: 



我将使用docker在centos7上驱动Jenkins。
但是,在重置屏幕上显示Jenkins重置密码后,套接字超时发生。

有什么解决方法?
由于一个麻烦的问题,我已经有好几天没有去上路了。
我希望你能帮助我。谢谢你。

最佳答案

您能否通过netstat -ntl命令显示端口的状态,以查看转发是针对ipv4还是ipv6的?
如果问题是代理,则它可以是解决方案之一:
命令:

docker pull --proxy http://9.1.0.228:3128 ubuntu

或编辑etc/default/docker文件:
https://blog.codeship.com/using-docker-behind-a-proxy/

关于sockets - docker 运行 Jenkins ,套接字连接超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53716091/

相关文章:

php - 在 PHP 中设置 TCP 监听器

c - g_io_channel + socket = server ,仍然没有收到正确的数据,只得到一个客户端?用C语言

ubuntu - 基本 Docker 容器报告运行级别未知

docker - "System limitation"在 docker for Windows 上启动 Windows 容器时

linux - 在 C 中关闭监听的 TCP 套接字

c# - 不是通过网络发送的多播数据包返回

macos - 如何访问在 docker 容器中运行的 nginx Web 服务器提供的网页

Jenkins 插件设计与 radioblock

jenkins - 从 Jenkins 向 Teams 发送附件

未找到 PHPDox 文件