0

Изменение порта Jenkins на macOS

11

Проблема с изменением порта Jenkins на Mac

Я пытался изменить порт по умолчанию для Jenkins, который составляет 8080. На Linux или Windows это можно сделать просто редактированием конфигурационного файла. Однако конфигурационный файл Jenkins на Mac выглядит совершенно иначе, чем на других системах.

Конечно, можно передать параметр --httpPort при запуске сервера, но я хочу сделать это через конфигурационный файл.

Есть ли возможность сделать это именно так?

P.S.: Проксирование экземпляра Jenkins через Apache частично решает проблему, но мне нужно изменить порт Jenkins.

Спасибо!

2 ответ(ов)

1

По-видимому, стандартный способ настройки параметров Jenkins на macOS следующий:

  1. Добавьте параметры по умолчанию, это изменит файл /Library/Preferences/org.jenkins-ci.plist:
sudo defaults write /Library/Preferences/org.jenkins-ci httpPort 7070
  1. Остановите службу Jenkins:
sudo launchctl unload /Library/LaunchDaemons/org.jenkins-ci.plist
  1. Запустите службу Jenkins снова:
sudo launchctl load /Library/LaunchDaemons/org.jenkins-ci.plist

После выполнения этих шагов Jenkins будет использовать указанный порт 7070.

0

Перед тем как изменить порт Jenkins на macOS, важно обратить внимание на способ установки Jenkins.

Я рекомендую устанавливать Jenkins с помощью 'Homebrew', если вы планируете собирать проекты для iOS. При установке через .pkg вы можете столкнуться с различными ошибками, которые довольно трудно исправить.

Я установил Jenkins LTS с помощью следующей команды:

brew install jenkins-lts

Таким образом, мой файл plist Jenkins расположен тут:

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

Вы можете изменить значение httpPort с дефолтного 8080 на любое другое, а затем сохранить файл.

<?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>

Команда sudo launchctl unload не сработает в вашем случае. Вместо этого попробуйте следующие команды, чтобы перезапустить Jenkins и применить изменения порта.

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)

Примечание: Если вы установили Jenkins LTS, не забудьте использовать команду jenkins-lts, а не просто jenkins.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь