osx 10.10 配好的Jenkins,局域网的其他机器无法通过IP访问

woshizilong 发布于 2015年07月09日
无人欣赏。

我在OSX10.10的MacMini上配好了Jenkins,访问http://localhost:8080可以正常访问。

但是,局域网内的其他机器无法通过http://该机IP:8080的方式访问。 请问是OSX的防火墙造成的吗?应该怎样配置才行。

共10条回复
tinyfool 回复于 2015年07月09日

默认防火墙应该不管这个

你在本机,可以用http://该机IP:8080的方式访问么?localhost指向的是127.0.0.1,也有可能你只监听了127.0.0.1的8080

woshizilong 回复于 2015年07月09日

多谢提醒,在本机http://127.0.0.1:8080可以访问,但是http://该机IP:8080无法访问。

woshizilong 回复于 2015年07月09日

我搞了个OS X Server 装上了,打开它的【服务】中的【网站】,从别的机器上用http://该机IP 是可以访问的。 感觉还是防火墙的配置的问题。

tinyfool 回复于 2015年07月09日

真是不会分析问题……都试验出来本机不能访问了,就说明肯定是Jenkins的问题嘛,还扯防火墙

http://www.weibo.com/1623064627/Cqm31EddH?ref=atme&rid=1_0_0_2667313572880924227

Jenkins 的系统设置里面有个 Jenkins Location,里面的 Jnekins URL 要改成 局域网IP+端口。
yangtzeyankee 回复于 2015年07月13日

此答案也离谱,Jenkins Location主要是发通知邮件用的:

Optionally specify the HTTP address of the Jenkins installation, such as http://yourhost.yourdomain/jenkins/. This value is used to let Jenkins know how to refer to itself, ie. to display images or to create links in emails. This is necessary because Jenkins cannot reliably detect such a URL from within itself.

要是在linux里我会 netstat -lntp 看看到底在listen哪些IP地址的 8080 端口,但是Mac上的netstat不一样,我还真没用过……Jenkins 有个选项是 --httpListenAddress 不过它默认是0.0.0.0,不知道楼主的安装配置方式是不是把它弄称了127.0.0.1

tinyfool 回复于 2015年07月13日

5楼 @yangtzeyankee 我怀疑某个教程写的 --httpListenAddress 要写 127.0.0.1 楼主也就这么做了

woshizilong 回复于 2015年07月13日

5楼 @yangtzeyankee 我是用brew安装Jenkins的,--httpListenAddress倒是没配置过。

暂时把Jenkins又找了台Linux配上了,访问倒是没有问题,回头再研究吧。

yangtzeyankee 回复于 2015年07月13日
woshizilong 回复于 2015年07月13日

8楼 @yangtzeyankee

十分感谢

ljw11 回复于 2月前

把jenkins的httpListenAddress改成 0.0.0.0 java -jar /usr/local/Cellar/jenkins/2.101/libexec/jenkins.war --httpPort=8080 --httpListenAddress=0.0.0.0

登录 或者 注册