Tugas yang berulang biasanya membosankan dan akhirnya menghabiskan banyak waktu dan energi Anda. Seiring waktu, beberapa alat otomatisasi telah dikembangkan untuk membantu meringankan kerumitan dalam melakukan pekerjaan yang berulang. Salah satu alat otomatisasi tersebut adalah Jenkins. Jenkins adalah server otomasi sumber terbuka yang dirancang untuk membantu pengembang perangkat lunak membangun, menguji, dan menyebarkan aplikasi dan dengan demikian menyederhanakan proses integrasi dan pengiriman yang berkelanjutan.
Kami telah menulis artikel sebelumnya tentang cara menginstal Jenkins di CentOS 8/ RHEL 8. Pada artikel ini, kami akan melakukan hal-hal yang sedikit berbeda dan menjalankan wadah Jenkins sebagai layanan systemd dengan buruh pelabuhan.
Prasyarat
Beberapa hal diperlukan sebelum Anda melanjutkan.
- Docker diinstal pada sistem Linux Anda.
- Pengguna biasa dengan hak istimewa sudo.
Langkah 1) Instal Mesin Docker
Untuk memulai, Anda harus menginstal mesin Docker di sistem Anda. Kami memiliki artikel terperinci tentang cara menginstal Docker di CentOS 8 / RHEL 8. Jalankan perintah docker di bawah ini untuk menampilkan versi docker
$ sudo docker version
Dari cuplikan di atas, kami telah mengonfirmasi bahwa buruh pelabuhan diinstal dan bahwa kita menjalankan buruh pelabuhan versi 19.03.13.
Langkah 2) Buat pengguna Jenkins
Selanjutnya, kita akan membuat pengguna sistem 'Jenkins' yang akan mengelola layanan Jenkins. Tapi pertama-tama, buat grup sistem untuk Jenkins:
$ sudo groupadd --system jenkins
Kemudian buat pengguna sistem Jenkins
$ sudo useradd -s /sbin/nologin --system -g jenkins jenkins
Dan akhirnya tambahkan pengguna Jenkins ke grup buruh pelabuhan seperti yang ditunjukkan:
$ sudo usermod -aG docker jenkins
Untuk mengonfirmasi bahwa pengguna Jenkins ditambahkan ke grup buruh pelabuhan, jalankan perintah id seperti yang ditunjukkan
$ id jenkins
Outputnya adalah,
[[email protected] ~]$ id jenkins uid=991(jenkins) gid=986(jenkins) groups=986(jenkins),989(docker) [[email protected] ~]$
Fantastis! Mari kita lanjutkan dan tarik gambar Jenkins.
Langkah 3) Tarik Jenkins Image dari hub Docker
Panggil perintah berikut untuk menarik gambar Jenkins terbaru dari hub Docker.
$ sudo docker pull jenkins/jenkins:lts
Ini biasanya memakan waktu beberapa detik pada koneksi internet yang cukup stabil. Setelah diunduh, verifikasi bahwa gambar Jenkins ada dengan menjalankan perintah berikut:
$ sudo docker images | grep jenkins
Output dari perintah di atas adalah:
[[email protected] ~]$ sudo docker images | grep jenkins jenkins/jenkins lts f669140ba6ec 6 days ago 711MB [[email protected] ~]$
Jenkins memerlukan penyimpanan yang persisten untuk menyimpan data dan digunakan kembali bahkan jika container mogok. Oleh karena itu, kita akan membuat direktori penyimpanan seperti yang ditunjukkan.
$ sudo mkdir /var/jenkins $ sudo chown -R 1000:1000 /var/jenkins
Langkah 4) Buat layanan systemd untuk Jenkins
Menggunakan editor teks pilihan Anda, buat file systemd Jenkins seperti yang ditunjukkan:
$ sudo vi /etc/systemd/system/jenkins-docker.service
Tempel konten berikut &simpan file.
[Unit] Description=Jenkins Server Documentation=https://jenkins.io/doc/ After=docker.service Requires=docker.service [Service] Type=simple User=jenkins Group=jenkins TimeoutStartSec=0 Restart=on-failure RestartSec=30s ExecStartPre=-/usr/bin/docker kill jenkins-server ExecStartPre=-/usr/bin/docker rm jenkins-server ExecStartPre=/usr/bin/docker pull jenkins/jenkins:lts ExecStart=/usr/bin/docker run --name jenkins-server --publish 8080:8080 --publish 50000:50000 --volume /var/jenkins:/var/jenkins_home jenkins/jenkins:lts SyslogIdentifier=jenkins ExecStop=/usr/bin/docker stop jenkins-server [Install] WantedBy=multi-user.target
Untuk memulai layanan Jenkins, muat ulang systemd terlebih dahulu dan kemudian mulai Jenkins.
$ sudo systemctl daemon-reload $ sudo systemctl start jenkins-docker
Sekarang mari kita periksa apakah Jenkins sedang berjalan. Untuk melakukannya, kami akan mengeksekusi:
$ sudo systemctl status jenkins-docker
Besar ! Jenkins aktif dan berjalan sebagai layanan systemd. Karena Jenkins akan berjalan di port 8080, buka port di firewall seperti yang ditunjukkan:
$ sudo firewall-cmd --permanent --add-port=8080/tcp $ sudo firewall-cmd --reload
Untuk menyiapkan Jenkins, cukup telusuri URL server seperti yang ditunjukkan
http://server-ip:8080
Anda akan mendapatkan halaman 'Buka Kunci Jenkins' seperti yang ditunjukkan. Untuk melanjutkan, Anda perlu memberikan kata sandi yang terletak di file yang ditampilkan
[[email protected] ~]$ cat /var/jenkins/secrets/initialAdminPassword 9c61bd823a404056bf0a408f4622aafc [[email protected] ~]$
Setelah selesai, Klik 'Lanjutkan'
Selanjutnya, pilih opsi ‘Instal plugin yang disarankan’ seperti yang ditunjukkan.
Setelah itu, buat pengguna administratif untuk akun Jenkins dan klik 'Simpan dan lanjutkan'
Pemasang akan memandu Anda melalui langkah-langkah yang tersisa sampai akhir. Setelah Instalasi berhasil, kita akan mendapatkan dasbor Jenkins berikut
Dan itu bungkus. Dalam panduan ini, Anda mempelajari cara menjalankan Jenkins di dalam wadah buruh pelabuhan sebagai layanan systemd.
Baca Juga : Cara Memasang dan Mengonfigurasi Jenkins di Ubuntu 20.04