Задался целью установить Jenkins на поддомен, желательно с https.
В общем случае задача простая и описана в официальном wiki. У меня сервер ещё голый, потому начнём с нуля.
Подклчение remi
# yum install epel-release# rpm -ivh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
# subscription-manager repos --enable=rhel-7-server-optional-rpms
Подключение репозитория с Jenkins
# wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo
# rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
# rpm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key
Установка
# yum install java-1.7.0-openjdk nginx jenkinsНастройка фаервола
# firewall-cmd --zone=public --add-service=http --permanent
# firewall-cmd --zone=public --add-service=https --permanent
# firewall-cmd --reload
Настройка SELinux (если включен)
# setsebool -P httpd_can_network_connect 1
Без этой опции nginx не сможет подключиться к jenkins и будет ошибка (13: Permission denied) while connecting to upstream
Настройка nginx на reverse proxy (wiki)
cat > /etc/nginx/conf.d/jenkins.conf
upstream jenkins {
server 127.0.0.1:8080 fail_timeout=0;
}
server {
listen 80;
server_name jenkins.domain.tld;
return 301 https://$host$request_uri;
}
server {
listen 443 ssl;
server_name jenkins.domain.tld;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
location / {
proxy_set_header Host $host:$server_port;
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 $scheme;
proxy_redirect http://127.0.0.1:8080 https://jenkins.domain.tld;
proxy_pass http://jenkins;
}
}
^D # Нажмите CTRL + D чтобы закончить запись файла
Запуск
# systemctl enable nginx
# systemctl enable jenkins
# systemctl restart nginx
# systemctl restart jenkins
Проверка
Если всё сделано правильно, то по ссылке https://jenkins.domain.tld будет доступен Jenkins. Обычно ему нужно некоторое время, чтобы полностью запуститься.Заключение
Рекомендуется сразу включить режим безопасности (Enable security) в Jenkins. По дальнейшей настройке хорошо написано в wiki.
Комментариев нет:
Отправить комментарий