Jenkins

В тази статия ще Ви покажем как да инсталирате сървъра за автоматизация с отворен код "Jenkins" на Вашия акаунт. Можете да видите какви промени трябва да направите на Вашия акаунт, как да инсталирате Jenkins и как да настроите Jenkins да работи винаги по HTTPS.

Важно: Инструкциите в тази статия са изпробвани с Jenkins версия с дългосрочна поддръжка (LTS) 2.440.1 и Java Development Kit (JDK) версия 21.0.2.

Подготовка

Преди да инсталирате Jenkins на Вашия акаунт, трябва да проверите и настроите акаунта си за следните неща:

  • Трябва да имате раздел "Уеб приложения" във Вашия хостинг Контролен панел. Ако нямате раздел "Уеб приложения" във Вашия Контролен панел, тогава инструкциите в тази статия не са валидни за Вашия акаунт и сървър. Можете да ни пишете за повече информация и съдействие.

  • "SSH достъп" и "Мрежови инструменти" трябва да са активирани за Вашия акаунт през раздел "SSH Достъп" на Контролния панел.

Инсталиране

За да инсталирате Jenkins, трябва да се свържете към Вашия акаунт чрез SSH и да следвате тези стъпки:

  1. Създайте директорията, в която желаете да инсталирате файловете на Jenkins (напр. "~/private/jenkins") и влезте в тази директория, като използвате следната команда:

    mkdir /home/$USER/private/jenkins && cd /home/$USER/private/jenkins

  2. Изтеглете на Вашия акаунт пакета Generic Java package (.war) за Jenkins от официалната страница. В момента на писане на тази статия, последната версия с дългосрочна поддръжка (LTS) е 2.440.1. Линкът за изтегляне на тази версия е https://get.jenkins.io/war-stable/2.440.1/jenkins.war, така че можете да я изтеглите във Вашата директория за Jenkins с тази команда:

    wget https://get.jenkins.io/war-stable/2.440.1/jenkins.war
    Важно: Уверете се, че използвате линка за последната версия на Jenkins за Generic Java package (.war) и го използвате в горната команда.

  3. Текущата версия с дългосрочна поддръжка (LTS) за Jenkins изцяло поддържа Java 21, Java 11 и Java 17 (информация). Можете да изтеглите последната версия 21 на Java Development Kit (JDK) като x64 компресиран архив (x64 Compressed Archive) за Linux от официалната страница за изтегляне. Линкът за изтегляне на последната версия JDK 21 по времето на писане на тази статия е https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz, така че за изтеглянето ѝ като архив, може да използвате следната команда:

    wget https://download.oracle.com/java/21/latest/jdk-21_linux-x64_bin.tar.gz

  4. Изтегленият пакет за JDK 21 е компресиран архив, който трябва да разархивирате. В дадения пример, името на архива е "jdk-21_linux-x64_bin.tar.gz". Със следната команда можете да го разархивирате и след завършване на разархивирането да го изтриете:

    tar zxf jdk-21_linux-x64_bin.tar.gz && rm jdk-21_linux-x64_bin.tar.gz


  5. След това трябва да създадете WebApps проект за Jenkins. Можете да използвате sureapp CLI инструмента за създаване на проект с име "jenkins", използвайки тази команда:

    sureapp project create \
        --engine custom \
        --engine-version - \
        --release-dir "/home/$USER/private/jenkins" \
        jenkins


  6. Влезте във Вашия Jenkins проект, като използвате следната sureapp CLI команда:

    sureapp project shell jenkins

  7. Следващата стъпка е настройката на стартовата команда за проекта. Тъй като Jenkins ще работи с Java, трябва да откриете "java" командата в папката на JDK. За JDK версия 21 "java" командата се намира в директория "~/private/jenkins/jdk-21.0.2/bin/java", а стартовата команда за Jenkins проекта можете да настроите с тази команда:

    sureapp project modify --start-cmd "/home/$USER/private/jenkins/jdk-21.0.2/bin/java -Xmx768m -XX:MaxRAM=1024m -jar /home/$USER/private/jenkins/jenkins.war --httpPort=\$PORT --httpsPort=-1" --rlimit-as 2048000000
    Ако искате да използвате Jenkins в поддиректория на Вашия домейн/поддомейн (напр. "example.com/Jenkins"), тогава трябва да добавите мрежовия параметър "--prefix=Jenkins" към стартовата команда на Вашия проект.

    Важно: Ако Jenkins проектът се рестартира поради грешки заради недостиг на памет, можете да увеличите стойностите за настройкте "-Xmx768m" (максимален размер на паметта от Java) и "-XX:MaxRAM=1024m" (реален размер на паметта, която може да се използва за максимален размер от Java) на Java в стартовата команда, както и настройката "--rlimit-as 2048000000" (ограничение за памет на уеб приложението) на проекта. Препоръчваме да променяте тези лимити спрямо наличните ресурси за Вашия хостинг план.

  8. Настройте променлива за средата на проекта, която оказва директорията с файловете на Jenkins:

    sureapp env set JENKINS_HOME /home/$USER/private/jenkins

  9. Изберете URL страницата, на която да е достъпен Jenkins, чрез раздел "Уеб приложения" на хостинг Контролния панел. Можете да направите това, като кликнете на бутона с иконка на молив (edit.gif) до проекта "jenkins". Изберете домейна и поддомейна чрез съответните падащи менюта в показалия се екран. За да запазите промените, използвайте бутона "Промени".

    jenkins_1.jpg

  10. Стартирайте проекта с бутона "Включи", който е с иконка на червен кръг (Enable app).

    jenkins_2.jpg

  11. Използвайте бутона "Презареди", докато състоянието на проекта стане "ОК" и статусът му "Стартиран".

    jenkins_3.jpg

  12. Отворете URL адреса на Вашия Jenkins проект, който е показан в колона "Адрес", и ще бъдете пренасочени към екран със следното съдържание:

    jenkins_4.jpg

  13. На екрана "Отключване на Jenkins" ще откриете информация къде можете да откриете Вашата първоначална администраторска парола - във файла "~/private/jenkins/secrets/initialAdminPassword" на Вашия акаунт или в лог файловете на проекта. Можете да видите паролата от файла чрез изпълнение на следната SSH команда:

    cat /home/$USER/private/jenkins/secrets/initialAdminPassword
    Ако пък искате да видите паролата от логовете на Jenkins проекта, използвайте тази команда на sureapp CLI инструмента:

    sureapp log follow
    Въведете паролата в екрана за отключване на Jenkins и следвайте стъпките на екрана, за да завършите процеса на инсталация.

  14. Вече можете да използвате Вашето Jenkins уеб приложение.

 

Задължително използване на HTTPS

Jenkins се използва от потребителите след предоставяне на потребителско име и парола, така че Ви съветваме да активирате задължително използване на HTTPS за него. Всичко, което е необходимо да направите, е да активирате или инсталирате SSL сертификат на сървъра за домейна/поддомейна, използван от Jenkins и да натиснете бутона "Включи" до домейна/поддомейна в раздел "Пренасочване към HTTPS" на Контролния панел.