Подтвердить что ты не робот

Корневой путь сайта Jenkins

Я стараюсь следовать следующим указаниям: https://wiki.jenkins-ci.org/display/JENKINS/Running+Jenkins+behind+Apache, чтобы настроить мой сервер Jenkins на http://myhost/jenkins. Он работает, но сайт Дженкинса считает, что http://myhost/ - это jenkins/root.

Я полагаю, что эта проблема вызвана первым предупреждающим флагом на этой веб-странице, то есть мой путь контекста установлен неправильно. Однако я не могу понять, где установить контекстный путь. Инструкции для ubuntu и windows достаточно ясны, но в Mac OS X 10.6 нет файла jenkins.xml, файла /etc/default/jenkins и ничего не актуального, которое я могу видеть в ~/.jenkins/config.xml.

Итак, что мне не хватает? Где я могу сказать jenkins, что его корень находится в/jenkins/вместо/?

4b9b3361

Ответ 1

Не уверен, где искать файл config.xml, но в http://myhost/jenkins/configure есть опция "URL Jenkins", которую вы можете использовать для установки.

Ответ 2

Перефразируя из документа, который вы упомянули,

Вам нужно указать контекст/префикс экземпляра Jenkins, это можно сделать, изменив конфигурацию Jenkins следующим образом: Либо установите путь контекста, изменив файл конфигурации jenkins.xml и добавив к записи --prefix =/jenkins (или аналогичный). Или Задайте путь контекста при использовании, добавив -prefix =/jenkins в JENKINS_ARGS в /etc/default/jenkins (Ubuntu) или в соответствующий файл автозагрузки.

Итак, как найти эти вещи...

Файл Jenkins.xml должен находиться в каталоге $JENKINS_HOME, я не уверен, что Mac OS имеет команды "updatedb" и "locate", но вы можете попробовать сделать updatedb && locate jenkins.xml

Кроме того, посмотрите в сценарии запуска; /etc/init.d, если он установлен из пакета, или добавить JENKINS_ARGS в свойства среды для пользователя, запускающего Jenkins (добавьте к ~user/.profile), или аргументы для контейнера, запускающего Jenkins.


Помните, что если ваша установка Jenkins (без аргумента prefix) была запущена в:

http://myserver:8080/ => 200 Jenkins is here

добавление --prefix=/ci/dashboard в аргументы приведет к такому поведению:

http://myserver:8080/ => 404
http://myserver:8080/ci/dashboard => 200 Jenkins is now here

Ответ 3

  • Добавить атрибут prefix в файл /etc/default/jenkins:

    JENKINS_ARGS = "- webroot =/var/cache/jenkins/war - prefix =/jenkins --httpPort = $HTTP_PORT --ajp13Port = $AJP_PORT

  • Настройте свой веб-сервер (например, nginx) для перенаправления /jenkins на localhost:8080;

Ответ 4

Чтобы обеспечить недавнее подтверждение предлагаемых подходов, на CentOS 7, с Jenkins 1.610, я смог достичь этого, изменив jenkinsUrl в jenkins.model.JenkinsLocationConfiguration.xml к желаемому (например, http://127.0.0.1:8080/jenkins), добавив

JENKINS_ARGS="--prefix=/jenkins"

внутри /etc/sysconfig/jenkins и перезапустить Jenkins.

FYI установка Jenkins была сделана через Puppet, используя этот кукольный модуль.

Ответ 5

Поместите это в /etc/apache 2/other/jenkins.conf:

ProxyPass         /jenkins  http://localhost:8009/jenkins
ProxyPassReverse  /jenkins  http://localhost:8009/jenkins
ProxyRequests     Off
<Proxy http://localhost:8009/jenkins*>
    Order deny,allow
    Allow from 127.0.0.1
</Proxy>

Затем выполните следующие команды:

sudo defaults write /Library/Preferences/org.jenkins-ci httpPort 8009
sudo defaults write /Library/Preferences/org.jenkins-ci prefix /jenkins
sudo launchctl stop org.jenkins-ci

Последняя команда сообщает launchd, чтобы остановить исполняемый экземпляр Jenkins. И новый будет автоматически запущен, потому что запуск был настроен так, чтобы всегда держать Jenkins в работе.

Ответ 6

Вот как я исправил его под Debian Wheezy, запущенным Jenkin 1.557

  • в/etc/default/jenkins, измените строку JENKINS_ARGS, добавив "--prefix = $PREFIX"

    JENKINS_ARGS = "..... --prefix = $PREFIX"

Ответ 7

вам нужно отредактировать файл конфигурации jenkins в каталоге такие как: sudo vi/etc/default/jenkins и изменить var HTTP_PORT следующий перезапуск jenkins sudo/etc/init.d/jenkins restart

надеюсь, что это полезно

Ответ 8

Я не уверен, что люди все еще ищут это, но, как только я натолкнулся на него, я решил, что разместил здесь свое решение.

Следуя инструкциям в здесь, мне удалось установить контекст, расположенный в Library/Preferences/org.jenkins-ci.plist, на более предпочтительный адрес. Ссылка имеет все настройки, которые вы можете редактировать с помощью собственной установки OS X.

Ответ 9

Я использую CentOS7, добавляю JENKINS_ARGS="--prefix=/jenkins" в /etc/sysconfig/jenkins и перезапускаю Jenkins. Затем вы можете посетить ip:8080/jenkins