Skip to content
Dokumentatsiya
Jenkins o'rnatish

Linux Serverlarga Jenkins o'rnatish

Kirish

Jenkins - bu asosan continuous integration (CI) va continuous delivery (CD) maqsadlarida foydalaniladigan mashhur open source avtomatlashtirish serveridir. U 2004 yilda Kohsuke Kawaguchi tomonidan "Hudson" nomi bilan yaratilgan va keyinchalik 2011 yilda "Jenkins" deb o'zgartirilgan.

U Java-da yozilgan va uning funksionalligini oshiruvchi keng ko'lamli plaginlarni qo'llab-quvvatlaydi, bu esa dasturiy ta'minot loyihalarini yaratish, sinovdan o'tkazish va joylashtirish bilan bog'liq turli vazifalarni avtomatlashtirishga mos keladi.

Jenkins turli xil operatsion tizimlarga, jumladan Linux, macOS va Windows-ga o'rnatilishi mumkin va mustaqil rejimda ishga tushirilishi yoki Apache Tomcat kabi dastur serverlarida ishga tushirilishi mumkin. U ko'p qirraliligi, kengaytirilishi va dasturiy ta'minotni ishlab chiqish life-skill ko'p jihatlarini avtomatlashtirish qobiliyati uchun barcha o'lchamdagi dasturiy ta'minotni ishlab chiqish tashkilotlarida keng qo'llaniladi.

Jenkins installerlari bir nechta Linux distributivlari uchun mavjud.

  • Debian/Ubuntu
  • Fedora
  • Red Hat/Alma/Rocky

Talablar

Minimal qurilma talablari:

  • 256 MB operativ xotira(RAM)
  • 1 GB disk maydoni (agar Jenkins Docker konteynerda ishlayotgan bo'lsa, kamida 10 GB tavsiya etiladi)

Kichik jamoa uchun tavsiya etilgan qurilma konfiguratsiyasi:

  • 4 GB+ RAM
  • 50 GB+ disk maydoni

Jenkins o'rnatish

Ubuntu kabi Debian va Debian-ga asoslangan distributivlarda siz Jenkins-ni apt orqali o'rnatishingiz mumkin.

1-> Java o'rnatish

Jenkins ishga tushirish uchun Java-ni talab qiladi, ammo ba'zi distributivlar default holda buni o'z ichiga olmaydi va ba'zi Java versiyalari Jenkins bilan mos kelmaydi.

Siz foydalanishingiz mumkin bo'lgan bir nechta Java ilovalari mavjud. OpenJDK hozirda eng ommabop, biz undan ushbu qo'llanmada foydalanamiz.

Debian apt repositoriyalarini yangilang, OpenJDK 17 ni o'rnating va buyruqlar bilan o'rnatishni tekshiring:

sudo apt update -y
sudo apt install fontconfig openjdk-17-jre -y
java -version

2-> Uzoq muddatli qo'llab-quvvatlash versiyasi(LTS Long Term Support release)

LTS (Uzoq muddatli qo'llab-quvvatlash) versiyasi har 12 haftada muntazam releaselar streamidan o'sha vaqt uchun barqaror release sifatida tanlanadi. Jenkinsni debian-stable apt repositoriyadan o'rnatish mumkin.

sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
  https://pkg.jenkins.io/debian-stable/jenkins.io-2023.key
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \
  https://pkg.jenkins.io/debian-stable binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt-get update
sudo apt-get install jenkins -y

3-> Haftalik Release(ixtiyoriy)

Foydalanuvchilar va plaginlarni ishlab chiquvchilarga xatolarni tuzatish va xususiyatlarni(feature) yetkazib berish uchun har hafta yangi release chiqariladi. Uni debian apt repositorydan o'rnatishingiz mumkin.

sudo wget -O /usr/share/keyrings/jenkins-keyring.asc \
  https://pkg.jenkins.io/debian/jenkins.io-2023.key
echo "deb [signed-by=/usr/share/keyrings/jenkins-keyring.asc]" \
  https://pkg.jenkins.io/debian binary/ | sudo tee \
  /etc/apt/sources.list.d/jenkins.list > /dev/null
sudo apt-get update
sudo apt-get install jenkins -y

4-> Jenkinsni o'rnatganimizdan keyin SystemD orqali Jenkinsni isha tushiramiz.

sudo systemctl enable jenkins
sudo systemctl start jenkins
sudo systemctl status jenkins

O'rnatishdan keyingi sozlash

Yuqoridagi protseduralardan biri yordamida Jenkinsni yuklab olish, o'rnatish va ishga tushirishdan so'ng (Jenkins Operator bilan o'rnatishdan tashqari), post-installation setup wizard boshlanadi.

Ushbu wizard setup sizni Jenkins qulfini ochish, uni plaginlar bilan sozlash va Jenkins-ga kirishni davom ettirishingiz mumkin bo'lgan birinchi administrator foydalanuvchisini yaratish uchun bir necha tezkor "bir martalik("one-off")" bosqichlardan o'tadi.

1-> Jenkins qulfini ochish

Yangi Jenkins instance birinchi marta kirganingizda, uni avtomatik ravishda yaratilgan parol yordamida qulfdan chiqarish so'raladi.

2-> http://localhost:8080 (yoki uni o'rnatishda Jenkins uchun qaysi portni sozlagan bo'lsangiz) sahifasini ko'rib chiqing va Unlock Jenkins sahifasi paydo bo'lguncha kuting.

Agar brauzer orqali 8080 portga kirolmasangiz firewallni va SElinuxni tekshirib ko'ring.

ufw uchun

sudo ufw allow 8080
sudo ufw reload
sudo ufw status

firewalld uchun

sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --list-all

Agar sizda SElinux bo'lsa uni tekshiring.

sudo getenforce
sudo setenforce 0

2-> Default jenkins admin parolni ko'rish uchun jenkins parol qayerda turganini ko'rsatib parol fayliga yo'l ko'rsatib qo'yadi yani /var/lib/jenkins/secrets/initialAdminPassword. parolni olish quyidagi buyruqdan foydalanamiz.

sudo cat /var/lib/jenkins/secrets/initialAdminPassword

Bu buyruq sudo cat /var/lib/jenkins/secrets/initialAdminPassword parolni konsolda chiqaradi.

Terminaldan 32 belgidan iborat alphanumeric paroldan nusxa oling va uni Administrator paroli maydoniga joylashtiring, so'ng Continue tugmasini bosing. Keyingi ekranda tavsiya etilgan plaginlarni o'rnatish yoki maxsus plaginlarni tanlash imkoniyati mavjud:

3-> Biz suggested plugins opsiyasini bosamiz, bu darhol o'rnatish jarayonini boshlaydi.

4-> O'rnatish tugallangach, sizdan birinchi Admin User o'rnatish so'raladi. Bu bosqichni o'tkazib yuborish va yuqoridagi boshlang'ich parol yordamida administrator sifatida davom etish mumkin, lekin foydalanuvchi yaratishga biroz vaqt ajratamiz.

5-> Siz Jenkins instance uchun afzal qilingan URL manzilini tasdiqlashingizni so'raydigan Instance Configuration sahifasini olasiz. Serveringiz uchun domen nomini yoki serveringizning IP manzilini tasdiqlang:

6-> Tegishli ma'lumotlarni tasdiqlaganingizdan so'ng, Save and Finish tugmasini bosing. Siz "Jenkins is Ready!" degan tasdiqlash sahifasini olasiz:

7-> Asosiy Jenkins boshqaruv paneliga tashrif buyurish uchun Start using Jenkins tugmasini bosing:

Shu nuqtada siz Jenkins-ni muvaffaqiyatli o'rnatdingiz.

Qo'shimcha