webentwicklung-frage-antwort-db.com.de

Ändern Sie den Jenkins-Port auf MacOS

Ich habe mich gefragt, wie man den Standardport 8080 von Jenkins ändern kann. Mit Linux oder Windows wird dies einfach mit der Konfigurationsdatei erledigt. Die Mac-Konfigurationsdatei von Jenkins sieht jedoch völlig anders aus.

Natürlich könnte man beim Starten des Servers den Parameter --httpPort übergeben, aber ich möchte dies innerhalb einer Konfigurationsdatei tun.

Gibt es dafür eine Option?

PS: Das Passieren der Jenkins-Instanz durch Apache würde das Problem irgendwie lösen, aber ich möchte den Jenkins-Port ändern.

Vielen Dank!

46
Tom Ferguson

Ich werde dich durchgehen:

cd /Applications/JenkinsSudo vi winstone.properties Fügen Sie httpPort=9999 zur Datei hinzu. Um alle Optionen anzuzeigen, die Sie dort eingeben können, geben Sie Java -jar jenkins.war --help ein.

führen Sie Java -jar jenkins.war von /Applications/Jenkins aus. Ihr Port wird geändert. jenkins.war wählt die Konfigurationsoptionen standardmäßig von ./winstone.properties aus.

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
14

es sieht so aus, als wäre der Standardweg:

#add die Standardparameter - dadurch wird /Library/Preferences/org.jenkins-ci.plist bearbeitet

Sudo-Standardwerte schreiben /Library/Preferences/org.jenkins-ci httpPort 7070

#halt

Sudo launchctl entlädt /Library/LaunchDaemons/org.jenkins-ci.plist

#Start

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

142
alex

Dies funktionierte für mich, weil ich den Port auf 7070 oder einen anderen geändert hatte.

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

Mehr Infos dazu

9
uopeydel

Bevor Sie den Jenkins-Port unter macOS ändern, müssen Sie auf die Installationsweise von Jenkins achten.

Ich empfehle Ihnen, Jenkins von 'Homebrew' zu installieren, wenn Sie sich mit der Erstellung von iOS-Projekten beschäftigen möchten, da Sie möglicherweise auf Fehler stoßen, die bei der Verwendung von .pkg zur Installation sehr schwierig sind.

Ich habe Jenkins LTS per Brühbefehl installiert: 

brew install jenkins-lts

Meine Jenkins-Plist-Datei ist hier:

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

Sie können den httpPort-Wert vom Standardwert 8080 in den anderen Wert ändern und dann die Datei speichern.

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>homebrew.mxcl.jenkins-lts</string> <key>ProgramArguments</key> <array> <string>/usr/libexec/Java_home</string> <string>-v</string> <string>1.8</string> <string>--exec</string> <string>Java</string> <string>-Dmail.smtp.starttls.enable=true</string> <string>-jar</string> <string>/usr/local/opt/jenkins-lts/libexec/jenkins.war</string> <string>--httpListenAddress=127.0.0.1</string> <string>--httpPort=8383</string> </array> <key>RunAtLoad</key> <true/> </dict> </plist>

Der Sudo launchctl unload-Befehl wird für Sie nicht funktionieren. Sie müssen diese Befehle verwenden, um Ihre Jenkins neu zu starten und die Port-Änderung durchzuführen.

brew services stop jenkins-lts brew services start jenkins-lts

ifeegoo:~ ifeegoo$ brew services stop jenkins-lts Stopping `jenkins-lts`... (might take a while) ==> Successfully stopped `jenkins-lts` (label: homebrew.mxcl.jenkins-lts) ifeegoo:~ ifeegoo$ brew services start jenkins-lts ==> Successfully started `jenkins-lts` (label: homebrew.mxcl.jenkins-lts)

Hinweis: Wenn Sie Jenkins LTS installiert haben, müssen Sie darauf achten, dass Ihr Befehl jenkins-lts und nicht jenkins sein muss.

1
ifeegoo

Eine andere Lösung für den Fall, dass zwei Daemons von Jenkins auf verschiedenen HTTP-Ports (d. H. 7070 und 7071) ausgeführt werden: Mehrere Jenkins-Daemons auf verschiedenen HTTP-Ports (Mac OS X)

0
STB Land

Ich habe Jenkins auf meinem Mac OS High Sierra mit Brew installiert.

Bitte folgen Sie den folgenden Schritten:

  1. Sie müssen den Port unter der folgenden Datei ändern:

    /usr/local/Cellar/jenkins/2.x.x/homebrew.mxcl.jenkins.plist

  2. Weisen Sie einen freien Port wie 7070 oder eine beliebige Nummer zu. [Wenn Sie über eine statische IP-Adresse verfügen, können Sie Port 80 (HTTP) angeben.]

    --httpPort = 7070

  3. Sie müssen auch den Jenkins Server neu starten. Verwenden Sie unter Brühservice Befehle:

    $ brew services stoppen Jenkins

    $ brew services starten Jenkins

Das ist alles.!

0
Pratik Patel

Schreiben Sie einfach den folgenden Befehl in das Terminal:

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

Das sollte es lösen.

0
Maaz Hasan