【问题标题】:Jenkins not accessible with http://<hostname>:8080 in Windows server 2012Jenkins 在 Windows server 2012 中无法通过 http://<hostname>:8080 访问
【发布时间】:2017-12-10 19:30:14
【问题描述】:

我已在 Windows server 2012 64 位机器上安装了 Jenkins,并希望使其在内部网络中可用。

我已将 --httpListenAddress 添加到 0.0.0.0 并重新启动 Jenkins 并尝试使用 http://hostname:8080 访问它,但没有显示任何页面(尽管它在 URL 栏中显示 Jenkins 图标)。但是http://localhost:8080 工作正常。

我进一步检查了 Jenkins 的防火墙入站规则,但似乎没有问题。

我尝试使用"netstat -aon | find /i "8080" 捕获侦听端口,发现&lt;host ip address&gt;:8080 FIN_WAIT_2 表明请求被卡住(可能是我错了)。

我不知道究竟是什么阻止了将主机名与 jenkins 一起使用。如果您已解决此问题,请分享您的解决方案。

【问题讨论】:

    标签: jenkins windows-firewall


    【解决方案1】:

    您可以尝试添加 Windows 防火墙规则。转到 Windows 防火墙、高级配置、入站规则规则并为您安装的特定版本的 java.exe 创建允许规则。

    这对我们有用,但缺点是每次升级 Java 时,还必须修改防火墙规则。这是因为 Java 会为每个版本创建一个新的子文件夹。我们已经尝试在防火墙规则中使用 %JAVA_HOME% 但它似乎不起作用。我们当时使用的是 Windows Server 2012R2。

    类似的答案在这里:https://stackoverflow.com/a/17479566/7752

    【讨论】:

      【解决方案2】:

      在服务器上打开一个新的命令提示符并键入 ipconfig

      你应该得到一个 ips 列表。打开浏览器并键入每个向上,然后键入 8080,例如 http://202.123.2.1:8080

      如果 Jenkins 打开,从另一台计算机 ping ip,看看是否能得到 ping 回复 ping 202.123.2.1

      如果您收到 ping 回复,您可以通过输入 ip 和端口号从网络上的任何 PC 访问 jenkins。

      现在要获取主机名,您需要编辑主机文件

      c:\Windows\System32\Drivers\etc\hosts

      输入ip,后跟主机名 202.123.2.1詹金斯

      如果打不通,需要打开8080端口。见https://www.vultr.com/docs/how-to-open-a-port-in-windows-firewall-on-windows-server-2012

      【讨论】:

      【解决方案3】:

      您无法从机器外部访问,因为 Jenkins 服务没有使用该机器的凭据,只能从 localhost 访问。

      这是在 Jenkins 服务中输入凭据的方法。

      1. 在 Windows 搜索栏中,键入 services 然后输入。
      2. 然后向下滚动到 Jenkins 并双击它。
      3. 在 Jenkins 属性中,选择“登录”选项卡。
      4. 选中“此帐户”复选框
      5. 更新您的用户名和密码。

      瞧!现在 Jenkins web 可以通过 Jenkins 服务连接到 Jenkins 机器了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-03-08
        • 2012-09-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多