swetrix
jenkinsubuntu

Ubuntu 20.04 üzerinde Jenkins kurulumu

Yazıya Jenkins nedir? Ne için kullanılır? sorularına cevap vererek başlayalım.

Jenkins, Java programlama dilinde yazılmış, açık kaynaklı, sürekli entegrasyon/sürekli teslim ve dağıtım (CI/CD) otomasyon yazılımı, DevOps aracıdır. DevOps dünyasında vazgeçilmez bir araç haline gelmiştir. Kuruluma başlayalım.

  1. Java (JDK) yükleme
apt install openjdk-11-jdk

Java’nın doğru şekilde yüklendiğine emin olmak için:

java -version
openjdk version "11.0.11" 2021-04-20
OpenJDK Runtime Environment (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
OpenJDK 64-Bit Server VM (build 11.0.11+9-Ubuntu-0ubuntu2.20.04, mixed mode, sharing)

2. Jenkins repository ekleme

wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'

3. Jenkins’i yükleme

apt update
apt install jenkins

Jenkins’in doğru şekilde yüklendiğine emin olmak için:

systemctl status jenkins
● jenkins.service - LSB: Start Jenkins at boot time
     Loaded: loaded (/etc/init.d/jenkins; generated)
     Active: active (exited) since Mon 2021-09-13 23:30:10 UTC; 9min ago
       Docs: man:systemd-sysv-generator(8)
    Process: 669 ExecStart=/etc/init.d/jenkins start (code=exited, status=0/SUCCESS)

Sep 13 23:30:07 master systemd[1]: Starting LSB: Start Jenkins at boot time...
Sep 13 23:30:08 master jenkins[669]: Correct java version found
Sep 13 23:30:08 master jenkins[669]:  * Starting Jenkins Automation Server jenkins
Sep 13 23:30:08 master su[801]: (to jenkins) root on none
Sep 13 23:30:08 master su[801]: pam_unix(su-l:session): session opened for user jenkins by (uid=0)
Sep 13 23:30:09 master su[801]: pam_unix(su-l:session): session closed for user jenkins
Sep 13 23:30:10 master jenkins[669]:    ...done.
Sep 13 23:30:10 master systemd[1]: Started LSB: Start Jenkins at boot time.

4. Firewall ayarlarını yapma

Jenkins 8080 portu üzerinden hizmet verir. Bizim de bu portu dışarıya açmamız gerekiyor.

#Sadece 192.168.10.0/24 bloğuna izin vermek için
ufw allow proto tcp from 192.168.10.0/24 to any port 8080
#Bütün IP bloklarından erişim sağlamak için
ufw allow 8080

Server tarafındaki kurulumu tamamladık. Artık browser üzerinden Jenkins’e erişebilirsiniz. Jenkins’e erişmek için:

http://jenkins_ip_adress:8080
jenkins1

5. Jenkins sorunsuz bir şekilde karşımıza geldiğinde geçici olarak üretilen Admin şifresini ister. Bu şifrenin yazılı olduğu dosyayı ‘cat’ komutu ile okuyarak şifreyi gireceğiz.

cat /var/lib/jenkins/secrets/initialAdminPassword
fbeeda0cfc8c43ba8ef91eb84c1bc773

Geçici şifreyi girerek ‘Contine’ butonuna basınız.

Bir sonraki ekranda ‘Önerilen pluginleri’ yada ‘Seçtiğiniz pluginleri’ yükleme gelecek.

jenkins2

Install suggested plugins seçeneğini seçerek devam edelim. Pluginler yüklendikten sonra yetkili bir kullanıcı oluşturmamızı isteyecek.

jenkins3

Save and Contuine diyerek devam ediyoruz.

jenkins4
jenkins5

Evet Jenkins artık hazır bir şekilde karşımızda. Not: Jenkins tamamen olmasada Türkçe dil desteği olan bir yazılımdır ama tabi ki bu şekilde kullanımı kimseye tavsiye etmem. Browser’a göre Jenkins’in dil değiştirmesini istemiyorsanız Locale plugini kullabilirsiniz.

Jenkins'i Yönet > Eklentileri Yönet > Kullanılabilir
jenkins6

Locale yüklendikten sonra:

Jenkins'i Yönet > Sistem Konfigurasyonunu Değiştir
Default Langauge > en_US
Ignore browser preference and force this language (İşaretle)
jenkins7 1

Resimde göründüğü şekilde ayarladıktan sonra Jenkins her zaman ingilizce olarak görünecektir.

Jenkins ile alakalı sorularınız var ise yorumlarda belirtebilirsiniz.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Önceki Yazı
pardus21banner

Pardus 21.0 Kurulumu

Sonraki Yazı
scplinux

Linux’da SCP Kullanımı

Benzer Yazılar
ansible_cover

Ansible 101: Kurulum ve Temel Bileşenler Rehberi

Bu blog yazısında, Ansible'ın temelini, avantajlarını ve nasıl kurulacağını keşfedeceksiniz. Ayrıca, Ansible ile Ubuntu/Debian tabanlı bir sunucuda Nginx web sunucusu kurulumu ve yapılandırılması hakkında adım adım bir rehber bulacaksınız. Yazıda verilen GitHub reposunu inceleyerek ve kendi ortamlarınızda test ederek Ansible'ın çalışma şeklini ve dinamiklerini daha iyi anlayabilirsiniz. Yazı, Ansible'ın temel bileşenlerini ve yapılandırma yönetimi, otomasyon, dağıtım gibi konseptlerini detaylı bir şekilde ele alır.
Yazıya git