Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 更改macOS上的Jenkins端口_Java_Macos_Continuous Integration_Port_Jenkins - Fatal编程技术网

Java 更改macOS上的Jenkins端口

Java 更改macOS上的Jenkins端口,java,macos,continuous-integration,port,jenkins,Java,Macos,Continuous Integration,Port,Jenkins,我想知道如何更改Jenkins的默认端口8080。使用linux或windows,这只需通过配置文件即可完成。但是Jenkins的Mac配置文件看起来与其他文件完全不同 当然,在启动服务器时可以传递--httpPort参数,但我希望在配置文件中这样做 有这样的选择吗 PS:通过apache传递Jenkins实例可以解决这个问题,但是我想更改Jenkins端口 谢谢 我会带你走过去: cd/Applications/Jenkins sudo vi winstone.properties 将http

我想知道如何更改Jenkins的默认端口8080。使用linux或windows,这只需通过配置文件即可完成。但是Jenkins的Mac配置文件看起来与其他文件完全不同

当然,在启动服务器时可以传递--httpPort参数,但我希望在配置文件中这样做

有这样的选择吗

PS:通过apache传递Jenkins实例可以解决这个问题,但是我想更改Jenkins端口


谢谢

我会带你走过去:

cd/Applications/Jenkins
sudo vi winstone.properties
httpPort=9999
添加到文件中。要查看可以放在那里的所有选项,请键入
java-jar jenkins.war--help

/Applications/jenkins
运行
java-jar-jenkins.war
。您的端口将被更改<默认情况下,code>jenkins.war从
/winstone.properties
选择配置选项

Andrew-Finnells-MacBook-Pro:Jenkins afinnell$ pwd
/Applications/Jenkins
Andrew-Finnells-MacBook-Pro:Jenkins afinnell$ ls -al
total 87928
drwxr-xr-x   4 root  wheel       136 Aug 21 12:32 .
drwxrwxr-x+ 83 root  admin      2822 Aug 21 12:05 ..
-rwxr-xr-x   1 root  wheel  45014470 Aug 19 13:14 jenkins.war
-rw-r--r--   1 root  wheel        14 Aug 21 12:32 winstone.properties
Andrew-Finnells-MacBook-Pro:Jenkins afinnell$ sudo cat winstone.properties 
httpPort=9494
Andrew-Finnells-MacBook-Pro:Jenkins afinnell$ java -jar jenkins.war
Running from: /Applications/Jenkins/jenkins.war
webroot: $user.home/.jenkins
[Winstone 2011/08/21 12:33:19] - Beginning extraction from war file
Jenkins home directory: /Users/afinnell/.jenkins found at: $user.home/.jenkins
[Winstone 2011/08/21 12:33:21] - HTTP Listener started: port=9494

看起来默认方式是:

#添加默认参数-这将编辑/Library/Preferences/org.jenkins-ci.plist

sudo defaults write/Library/Preferences/org.jenkins-ci httpPort 7070

#停止

sudo launchctl unload/Library/LaunchDaemons/org.jenkins-ci.plist

#开始

sudo launchctl load/Library/LaunchDaemons/org.jenkins-ci.plist


另一种解决方案是在不同的HTTP端口(即7070和7071)上运行Jenkins的两个守护进程:

这对于我将端口更改为7070或其他端口很有效

sudo defaults write /Library/Preferences/org.jenkins-ci httpPort 7070

sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist

sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

我已使用Brew在我的Mac OS上安装了Jenkins

请按照以下步骤操作:

  • 您必须将端口更改为以下文件: /usr/local/ceral/jenkins/2.x.x/homebrew.mxcl.jenkins.plist

  • 分配任何空闲端口,如7070或任何您想要的数字。[如果您有静态IP,则可以提供端口80(HTTP)]

    --httpPort=7070

  • 您还需要重新启动Jenkins服务器。使用以下brew服务命令:

    $brew服务停止jenkins

    $brew服务启动jenkins


  • 就这些

    在修改macOS上的Jenkins端口之前,必须注意Jenkins的安装方式

    在这里,如果你想处理iOS项目构建,我建议你使用“自制”安装Jenkins,因为你可能会遇到一些错误,使用
    .pkg
    安装的方式很难解决这些问题

    我已通过brew命令安装了Jenkins LTS:

    brew安装jenkins lts

    我的Jenkins plist文件在这里:

    /usr/local/ceral/jenkins-lts/2.121.2/homebrew.mxcl.jenkins-lts.plist

    您可以将
    httpPort
    值从默认值
    8080
    修改为其他值,然后保存文件

    
    标签
    homebrew.mxcl.jenkins-lts
    程序参数
    /usr/libexec/java_home
    -五
    1.8
    --执行官
    JAVA
    -Dmail.smtp.starttls.enable=true
    -罐子
    /usr/local/opt/jenkins-lts/libexec/jenkins.war
    --httplistenadress=127.0.0.1
    --httpPort=8383
    运行负荷
    

    sudo launchctl unload
    命令对您无效。您必须尝试这些命令重新启动Jenkins并使端口修改生效

    
    brew服务阻止jenkins lts
    brew服务启动jenkins lts
    

    
    ifeegoo:~ifeegoo$brew服务阻止jenkins lts
    停止“jenkins lts”。。。(可能需要一段时间)
    ==>已成功停止“jenkins lts”(标签:homebrew.mxcl.jenkins lts)
    ifeegoo:~ifeegoo$brew服务启动jenkins lts
    ==>已成功启动“jenkins lts”(标签:homebrew.mxcl.jenkins lts)
    


    注意:如果您安装了Jenkins LTS,您必须注意您的命令必须是
    Jenkins LTS
    ,而不是
    Jenkins

    只需在终端中编写以下命令即可:

    sudo defaults write /Library/Preferences/org.jenkins-ci.plist httpPort 9999
    
    sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
    
    sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist
    

    这应该可以解决问题。

    这很有效!不过,第一个命令也需要sudo。否则我会得到一个“无法写入域org.jenkins-ci;正在退出”。这应该标记为正确的问题。另一个太乱了。很酷,但是有几个安装呢?还有另一个答案。詹金斯仍然需要以一种更干净的方式来做这件事。这是一个非常好的答案。请注意,如果您收到
    /Library/LaunchAgents/org.jenkins-ci.plist:找不到指定的服务
    ,您可以尝试在不使用
    sudo
    的情况下执行停止/启动命令。谢谢。我认识詹金斯,但我对詹金斯在mac上是新手。我同意这应该是公认的答案。尽管这来得有点晚:你应该阅读詹金斯安装程序的文档。您可以在/Library/Documentation/Jenkins中找到它(除非您自定义了安装并选择不安装文档)。这是最简单也是最好的答案。如果您导航到/usr/local/opt/Jenkins lts或您已安装的Jenkins的任何版本,这也适用于meThis。我使用命令“sudo nano”来确保我对该文件有编辑权限。鉴于詹金斯现在建议在macOS上使用自制软件进行安装,这绝对是正确的做法。超级容易。只需修改
    homebrew.mxcl.jenkins.plist
    (首先进行备份),运行
    brew服务将重新启动jenkins
    。好了,非常感谢!通过使用plist配置文件,我最终让Jenkins使用
    .local
    或IP地址(通过更改为
    --httplistenadress=0.0.0
    :)来回答本地和本地网络请求