Установка Jenkins · 4 min read · Dec 20, 2025

Как установить сервер автоматизации Jenkins с Nginx на CentOS 7

Jenkins — это бесплатный и открытый сервер непрерывной интеграции. Он написан на JAVA. Его можно использовать для автоматизации различных задач, связанных с разработкой программного обеспечения, таких как сборка, тестирование и развертывание. Он поддерживает множество систем контроля версий, таких как git, SVN, mercurial и др.

В этом руководстве мы установим сервер автоматизации Jenkins на сервер CentOS 7. Мы также настроим Nginx в качестве обратного прокси для Jenkins.

Предварительные требования

  • Минимальный сервер CentOS 7
  • Привилегии root. Это руководство написано от имени пользователя root, если вы вошли как пользователь sudo, выполните sudo -i.

Обновление базовой системы

Перед установкой любого пакета рекомендуется обновить пакеты и репозиторий, используя следующую команду.

yum -y update

После обновления системы продолжайте установку JAVA.

Установка JAVA 8

Jenkins поддерживает как OpenJDK, так и Oracle JAVA, в этом руководстве мы установим последнюю версию OpenJDK на сервер. Выполните следующую команду для установки OpenJDK на ваш сервер.

yum install java-1.8.0-openjdk

Теперь вы можете проверить версию Java, используя следующую команду.

java -version

Вы получите следующий вывод.

[root@liptan-pc ~]# java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

Вам также нужно будет проверить, установлена ли переменная окружения JAVA_HOME. Выполните следующую команду для этого.

echo $JAVA_HOME

Если вы получите нулевой или пустой вывод, вам нужно будет вручную установить переменную JAVA_HOME. Отредактируйте файл .bash_profile с помощью вашего любимого редактора. В этом руководстве мы будем использовать редактор nano. Выполните следующую команду, чтобы отредактировать .bash_profile с помощью nano.

nano ~/.bash_profile

Теперь добавьте следующие строки в конец файла.

export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/jre

Теперь загрузите файл с помощью следующей команды.

source ~/.bash_profile

Теперь вы можете снова выполнить команду echo $JAVA_HOME, чтобы проверить, установлена ли переменная окружения.

[root@pc ~]# echo $JAVA_HOME 
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/

Теперь, когда у вас установлена JAVA, вы можете продолжить установку Jenkins.

Установка Jenkins

Jenkins можно установить напрямую, добавив репозиторий и импортировав GPG-ключ. Добавьте репозиторий Jenkins в вашу систему, выполнив следующую команду.

wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

Если у вас не установлен wget, вы можете выполнить yum -y install wget.

Импортируйте GPG-ключ, выполнив следующую команду.

rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

После успешного импорта вы можете установить Jenkins, выполнив следующую команду.

yum -y install jenkins

Jenkins теперь установлен на вашем сервере. Все необходимые пакеты теперь установлены. Установщик также создал нового пользователя jenkins для выполнения процесса. Вы можете продолжить, чтобы запустить сервер.

Запуск Jenkins

Вы можете запустить Jenkins, выполнив следующую команду.

systemctl start jenkins

Чтобы остановить Jenkins, вы можете выполнить следующую команду.

systemctl stop jenkins

Вы можете проверить статус процесса, выполнив следующую команду.

systemctl status jenkins

Установка Nginx

Вместо доступа к приложению на порту 8080, мы можем создать обратный прокси для приложения с помощью веб-сервера Apache или Nginx. В этом руководстве мы будем использовать nginx в качестве обратного прокси для вашего приложения. Теперь nginx будет работать за прокси-сервером nginx. nginx недоступен в стандартном репозитории YUM. Вам нужно будет установить репозиторий EPEL для установки Nginx.

yum -y install epel-release

Теперь вы можете установить Nginx, выполнив:

yum -y install nginx

Создайте новый серверный блок, выполнив следующую команду.

nano /etc/nginx/conf.d/jenkins.conf

Заполните файл следующим содержимым. Замените ci.yourdomain.com на ваше фактическое доменное имя.

upstream jenkins{
    server 127.0.0.1:8080;
}

server{
    listen      80;
    server_name ci.yourdomain.com;

    access_log  /var/log/nginx/jenkins.access.log;
    error_log   /var/log/nginx/jenkins.error.log;

    proxy_buffers 16 64k;
    proxy_buffer_size 128k;

    location / {
        proxy_pass  http://jenkins;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        proxy_redirect off;

        proxy_set_header    Host            $host;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Proto https;
    }

}

Сохраните файл и выйдите из редактора. Теперь вы можете запустить Nginx, выполнив следующую команду.

systemctl start nginx

Чтобы включить Nginx для автоматического запуска при загрузке, выполните следующую команду.

systemctl enable nginx

Настройка брандмауэра и SELinux

Если у вас есть брандмауэр, работающий на вашем сервере, вам нужно будет разрешить порт 8080 и стандартный HTTP-порт через брандмауэр. Выполните следующую команду, чтобы добавить правила брандмауэра для разрешения портов 8080 и 80.

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-service=http --permanent

Перезагрузите зоны брандмауэра, выполнив:

firewall-cmd --reload

Настройте SELinux для конфигурации прокси nginx, выполнив следующую команду.

setsebool httpd_can_network_connect 1 -P

Настройка Jenkins

Теперь вы можете получить доступ к веб-интерфейсу сервера Jenkins CI, перейдя по следующему веб-адресу.

http://ci.yourdomain.com

Замените ci.yourdomain.com на ваше фактическое доменное имя. Вы увидите следующий интерфейс.

Разблокировать Jenkins

Вам будет предложено ввести ваш первоначальный пароль администратора, который сгенерирован установщиком и сохранен в файле /var/lib/jenkins/secrets/initialAdminPassword. Выполните следующую команду, чтобы получить первоначальный пароль администратора.

cat /var/lib/jenkins/secrets/initialAdminPassword

Используйте пароль для входа и продолжайте.

В следующем разделе вам будет предложено выбрать, какие плагины вы хотите установить, для новичков рекомендуется выбрать Установить рекомендуемые плагины.

Настроить Jenkins

Это установит все плагины, необходимые для начала работы.

На следующем интерфейсе будут установлены плагины.

Jenkins Начало работы

Теперь вам нужно будет создать пользователя-администратора для вашей панели управления Jenkins.

Создать пользователя в Jenkins

Наконец, вы будете перенаправлены на административную панель Jenkins.

Панель управления Jenkins

Заключение

Теперь вы можете использовать Jenkins для непрерывной интеграции в разработке программного обеспечения. Вы можете узнать больше о Jenkins, перейдя на сайт Jenkins.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.