Рассмотрим как выполняется установка Jenkins на Centos 7, потребуется подключить специальный репозитория Jenkins для redhat систем.
Jenkins — это CI/CD, позволяет автоматизировать процесс сборки, тестирования и установки релизов разрабатываемого программистами ПО. В Jenkins, как в аналогах вроде Gitlab CI, можно писать сценарии автоматизации процессов разработки программного продукта.
Как самостоятельный продукт Jenkins представляет собой приложение на языке Java.
Установка Jenkins на Centos 7
При помощи wget подключаем репозиторий
wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat-stable/jenkins.repo
Импортируем ключ jenkins
rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
yum install jenkins
Total download size: 72 M
Installed size: 72 M
Is this ok [y/d/N]: y
Пакет требует для работы свободного порта 8080, на котором будет запускаться и наличия java
Проверяем Java
java -version
openjdk version "1.8.0_191" OpenJDK Runtime Environment (build 1.8.0_191-b12) OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)
В правила сетевого фильтра с помощью с помощью клиента firewall-cmd добавляем правила для того, чтобы был доступ по http и к порту 8080.
firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-service=http --permanent
Перечитываем правила firewall
firewall-cmd --reload
Установка Jenkins на Centos 7 завершена.
Стартуем службу
systemctl start jenkins
Сейчас можно обратиться к публичному адресу сервера по порту 8080
http://123.123.123.123:8080
Запрашиваемый системой пароль находится в файле на сервере
cat /var/lib/jenkins/secrets/initialAdminPassword
В интерфейсе выбираем install suggested plugins
Затем create admin user и указываем реквизиты
Jenkins на домене или поддомене
Обычно Jenkins устанавливается на корпоративный домен или его поддомен (example.com/jenkins.example.com). В этом случае не нужно обращаться к порту 8080.
Работу системы по домену можно настроить за счет проксирования Nginx. На сервер устанавливается пакет Nginx, для него создается виртуальный хост с именем домена.
Затем с домена задается проксирование на порт 8080. В Nginx используется директива proxy_pass.
Принцип настройки такой же как, например, для приложения на NodeJS. Только бэкендом выступает приложение на Java — Jenkins.
Читайте про сброс пароля инсталяции Jenkins и про бэкапы.