GNU/Linux >> Belajar Linux >  >> Linux

Cara Menginstal Jenkins CI/CD di Ubuntu Linux

Apakah Anda menghabiskan banyak waktu untuk menerapkan kode di infrastruktur Anda dengan banyak langkah dan perangkat lunak? Jangan khawatir, Anda berada di tempat yang tepat untuk mempelajari cara memasang Jenkins, alat sumber terbuka yang paling banyak digunakan.

Bukan pembaca? Tonton tutorial video terkait ini! Tidak melihat videonya? Pastikan pemblokir iklan Anda dinonaktifkan.

Dalam tutorial ini, Anda akan mempelajari cara menginstal Jenkins di mesin Ubuntu, sehingga Anda dapat membuat dan menerapkan kode dengan mengklik tombol.

Baca terus dan mulai menginstal!

Prasyarat

Posting ini akan menjadi tutorial langkah demi langkah. Untuk mengikuti, pastikan Anda memiliki mesin Ubuntu. Tutorial ini menggunakan Ubuntu 18.04 dengan apache terinstal.

Menginstal Java Versi 11 pada Mesin Ubuntu

Jenkins adalah alat Continuous Integration (CI) dan Continuous Deployment (CD), yang dapat Anda jalankan di wadah servlet yang berbeda, seperti Apache tomcat atau glassfish. Tetapi untuk demo ini, Anda akan menjalankan Jenkins di server container servlet Java bawaannya.

Ada beberapa implementasi Java yang dapat Anda gunakan untuk bekerja dengan Jenkins, tetapi OpenJDK adalah yang paling populer, yang akan Anda instal dan gunakan dalam tutorial ini.

1. Masuk ke mesin Ubuntu Anda menggunakan klien SSH favorit Anda.

2. Selanjutnya, jalankan perintah berikut untuk membuat direktori dengan nama ~/install_jenkins_demo dan beralih ke direktori itu.

mkdir ~/install_jenkins_demo
cd ~/install_jenkins_demo

3. Jalankan apt install perintah di bawah ini untuk menginstal Java di mesin Anda.

# Installing Java Version: Java SE 11 (LTS)
sudo apt install default-jdk 

4. Terakhir, jalankan perintah di bawah ini untuk memeriksa versi Java yang diinstal pada mesin Anda. Melakukannya memastikan bahwa Anda telah berhasil menginstal Java.

# Checking the Version of Java to verify Java installation.
java -version

Instal Jenkins pada instance Ubuntu 18.04 LTS

Sekarang Anda telah menginstal Java di mesin Ubuntu, saatnya untuk menginstal Jenkins di mesin Anda. Menginstal Jenkins sangat mirip dengan cara Anda menginstal paket lain di komputer Anda.

Dengan asumsi Anda masih masuk ke klien SSH:

1. Pertama, jalankan apt update perintah untuk memperbarui paket sistem Anda.

sudo apt update

2. Selanjutnya, jalankan wget perintah di bawah ini untuk menambahkan kunci publik Jenkins ke sistem Anda.

Menambahkan kunci publik memungkinkan situs Jenkins mengunduh repositori resmi Jenkins atau paket apa pun yang diperlukan.

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -

3. Jalankan perintah berikut untuk menambahkan repositori resmi Jenkins ke sistem Anda dan memperbarui sistem Anda.

# Adding the Jenkins official repository to the system
sudo sh -c 'echo deb https://pkg.jenkins.io/debian-stable binary/ > \
    /etc/apt/sources.list.d/jenkins.list'
# Updating the package
sudo apt-get update

4. Sekarang, jalankan perintah di bawah ini ke install Jenkins kemasan.

# Installing the Jenkins Package
sudo apt-get install Jenkins

5. Terakhir, jalankan service perintah di bawah ini untuk memverifikasi status layanan Jenkins. # Validating the Jenkins service on ubuntu machine service jenkins status

# Validating the Jenkins service on ubuntu machine
service jenkins status

Seperti yang Anda lihat di bawah, status menunjukkan layanan Jenkins aktif .

Mengonfigurasi Instance Jenkins

Sekarang, Anda telah berhasil menginstal Jenkins. Tapi, sebelum Anda benar-benar mulai menggunakannya, Anda perlu mengaturnya dengan fasilitas dasar. Bagaimana? Langkah pertama dalam menyiapkan Jenkins adalah membuka kunci Jenkins yang baru diinstal.

Dengan asumsi Anda masih masuk ke klien SSH:

1. Buka browser favorit Anda dan arahkan ke alamat IP server diikuti oleh port 8080 seperti jenkins-ip:8080. Setelah menavigasi ke tautan, Anda harus membuka kunci Jenkins dengan memberikan kata sandi administratif. Kata sandi administratif disimpan di /var/lib/jenkins/secrets/initialAdminPassword direktori di server (langkah dua).

2. Jalankan cat perintah di bawah ini untuk menambahkan kata sandi administrator pada mesin Anda dari /var/lib/jenkins/secrets/initialAdminPassword direktori.

cat /var/lib/jenkins/secrets/initialAdminPassword

Seperti yang Anda lihat di bawah, string besar dalam output adalah kata sandi admin. Catat kata sandi admin karena Anda akan membutuhkannya untuk membuka kunci Jenkins (langkah ketiga).

3. Beralih kembali ke browser web Anda (Buka Kunci Jenkins halaman) dan masukkan kata sandi admin yang Anda catat di langkah kedua.

Setelah Anda membuka kunci Jenkins, browser Anda dialihkan ke halaman tempat Anda akan menyesuaikan instance Jenkins Anda dengan plugin (langkah empat).

4. Di bagian Sesuaikan Jenkins halaman, klik Instal plugin yang disarankan pilihan.

Plugin Jenkins adalah alat pihak ketiga yang terintegrasi dengan Jenkins dan memungkinkan Anda untuk melakukan tugas-tugas seperti plugin Git. Plugin Git memungkinkan Anda terhubung dengan repo Git, menjalankan perintah Git, dan sebagainya.

5. Isi rincian pengguna Admin, seperti yang ditunjukkan di bawah ini, dan klik Simpan dan Lanjutkan untuk membuat pengguna Admin. Pengguna Admin ini memungkinkan Anda untuk bekerja dengan Jenkins UI Dashboard atau Jenkins instance.

Segera setelah Anda menekan Simpan dan Lanjutkan, Anda akan mendapatkan layar Konfigurasi Instans yang ditunjukkan pada langkah lima.

Secara default, Jenkins memiliki pengguna Admin yang dibuat dengan nama pengguna/sandi (admin: admin ) tetapi tetap memberi Anda opsi untuk membuat pengguna Admin pilihan Anda. Anda dapat melewati dan melanjutkan sebagai admin jika tidak ingin membuat pengguna Admin khusus.

6. Terakhir, klik Simpan dan Selesai untuk menyimpan konfigurasi instance.

Konfigurasi instans memungkinkan Anda untuk menentukan URL Jenkins yang ingin Anda gunakan, dan dalam hal ini, Anda akan menggunakan URL default (yaitu, server-ip:8080)

Mengubah Port Default Instance Jenkins

Sebelumnya, Anda mengetahui bahwa secara default, Jenkins berjalan pada port 8080, yang baik-baik saja. Tetapi bagaimana jika Anda perlu menjalankan beberapa aplikasi lain di port yang sama seperti apache atau NGINX? Jangan khawatir! Anda dapat mengubah Port of Jenkins (8080) default dan menjalankan instance Jenkins di port lain.

1. Buka /etc/default/Jenkins file di editor teks pilihan Anda dan ubah port default dari 8080 menjadi 9090 dan simpan perubahannya.

2. Selanjutnya, jalankan perintah di bawah ini untuk me-restart Jenkins, sehingga konfigurasi yang diperbarui akan berlaku.

sudo systemctl restart jenkins

3. Terakhir, arahkan ke URL Jenkins, tetapi kali ini, ubah port ke 9090, seperti yang ditunjukkan di bawah ini.

Menjalankan Jenkins dengan Aman (HTTPS) menggunakan Sertifikat SSL

Saat ini, instans Jenkins Anda berjalan dengan sempurna di port 9090. Tapi apakah itu aman? Tidak. Amankan instans Jenkins Anda dan hindari penyusupan oleh penyerang dengan mengaktifkan sertifikat SSL.

Sertifikat SSL terutama digunakan untuk pengujian di mesin lokal saat tidak ada sertifikat yang tersedia dari otoritas sertifikasi eksternal.

Untuk mengamankan instans Jenkins Anda:

1. Jalankan setiap perintah di bawah ini untuk membuat direktori bernama ~/certificates untuk menyimpan sertifikat dan mengubah ke direktori itu.

mkdir ~/certificates
cd ~/certificates

2. Selanjutnya jalankan openssl berikut ini perintah untuk menghasilkan Permintaan Penandatanganan Sertifikat (CSR) dan kunci pribadi.

openssl req -x509 -newkey rsa:4096 -keyout apache.key -out apache.crt -days 365 -nodes

3. Jalankan perintah berikut buat direktori lain (/etc/apache2/ssl ) dan pindahkan sertifikat dari ~/certificates/ direktori ke /etc/apache2/ssl direktori.

mkdir /etc/apache2/ssl
mv ~/certificates/* /etc/apache2/ssl/.

4. Buka file konfigurasi situs Apache SSL default (/etc/apache2/sites-available/default-ssl.conf ) dan tambahkan baris di bawah ini. Pastikan untuk mengganti dengan nama asli server Anda.

Dalam kode di bawah ini, Anda menentukan lokasi (kunci sertifikat dan file) tempat Anda menyalin sertifikat SSL sebelumnya. Juga, agar Jenkins mengarahkan ulang pada port 9090 , Anda akan menambahkan ProxyPass argumen dan aktifkan ProxyPreserveHost .

ServerName 
SSLCertificateFile    /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key
ProxyPreserveHost On
ProxyPass / http://127.0.0.1:9090/
ProxyPassReverse / http://127.0.0.1:9090/

5. Sekarang jalankan setiap perintah di bawah ini untuk mengaktifkan modul SSL, aktifkan situs yang Anda modifikasi (langkah keempat), dan mulai ulang layanan Apache.

# Enable the SSL module, so you can work with SSL connections.
sudo a2enmod ssl proxy proxy_http proxy_balancer
# Enable the site you modified (step four)
sudo a2ensite default-ssl.conf
# Restart the Apache service
sudo service apache2 restart

6. Terakhir, navigasikan ke instance Jenkins Anda, tetapi kali ini, menggunakan HTTPS, seperti yang ditunjukkan di bawah ini.

Seperti yang Anda lihat, Jenkins berhasil dibuka dengan koneksi SSL pada port HTTPS. Jangan khawatir jika Anda melihat simbol peringatan yang menampilkan Tidak aman pesan. Anda akan mendapatkan peringatan itu karena Anda menggunakan sertifikat yang ditandatangani sendiri (dibuat oleh Anda) dan bukan oleh otoritas sertifikat.

Kesimpulan

Dalam tutorial ini, Anda mempelajari cara menginstal Jenkins di mesin Ubuntu, dan memverifikasi bahwa Anda dapat mengakses instance Jenkins dengan aman.

Sekarang, bagaimana Anda berencana untuk meningkatkan permainan Anda dengan Jenkins? Mungkin mengotomatiskan penerapan web? Atau buat jalur CD Jenkins CI untuk meningkatkan proses pengembangan perangkat lunak Anda?


Linux
  1. Cara menginstal Java di Linux

  2. Cara menginstal Jenkins di Linux

  3. Cara Menginstal Java di Ubuntu 22.04

  1. Cara Menginstal Java di Ubuntu

  2. Cara Menginstal Java di Linux Ubuntu

  3. Cara menginstal Java di Ubuntu 18.10 Cosmic Sotong Linux

  1. Cara menginstal Java di Ubuntu 19.10 Eoan Ermine Linux

  2. Cara Menginstal Java di Ubuntu 18.04

  3. Cara Menginstal Java di Ubuntu 18.04