Jenkins Nedir ve Neden Kullanmalıyız?
Bir zamanlar yazılım geliştirme süreci karmaşık ve zaman alıcıydı. Ancak günümüzde devops süreçlerinin popülerleşmesiyle işler oldukça kolaylaştı. Eğer siz de bu dünyaya adım attıysanız, Jenkins'i kesinlikle duymuşsunuzdur. Peki, Jenkins nedir?
Jenkins, sürekli entegrasyon ve sürekli dağıtım (CI/CD) süreçlerini otomatikleştiren açık kaynaklı bir araçtır. Jenkins sayesinde kod yazarken testlerinizi otomatik olarak çalıştırabilir, derleme işlemlerinizi hızlandırabilir ve hatta uygulamanızı üretim ortamına taşırken hata risklerini en aza indirebilirsiniz. Kısacası, Jenkins hayatınızı kolaylaştıracak bir yardımcıdır.
Linux Üzerinde Jenkins Kurulumu
Linux'ta Jenkins kurulumu yapmak oldukça basit, fakat her adımı dikkatlice takip etmeniz önemli. Gelin, kurulum adımlarını birlikte inceleyelim.
Adım 1: Java'nın Yüklenmesi
Jenkins'in düzgün çalışabilmesi için Java'nın sisteminizde kurulu olması gerekir. Bunun için aşağıdaki komutu kullanarak Java'yı yükleyelim:
kopyalasudo apt update sudo apt install openjdk-11-jdk java -version
Bu komutla, Java'nın doğru şekilde yüklendiğinden emin olabilirsiniz. Eğer her şey yolunda giderse, "java version" komutuyla Java sürümünü görebileceksiniz.
Adım 2: Jenkins Paket Kaynağını Ekleme
Jenkins, Debian tabanlı sistemlerde paket yöneticisi aracılığıyla kurulabilir. Bu yüzden ilk olarak Jenkins'in paket kaynağını eklememiz gerekiyor. Aşağıdaki komutları sırayla terminale yazın:
kopyalawget -q -O - https://pkg.jenkins.io/jenkins.io.key | sudo tee /etc/apt/trusted.gpg.d/jenkins.asc sudo sh -c 'echo deb http://pkg.jenkins.io/debian/ stable main > /etc/apt/sources.list.d/jenkins.list' sudo apt update
Bu adımla Jenkins'in Debian tabanlı sistemlerdeki en güncel paketleri almasını sağlıyoruz.
Adım 3: Jenkins'i Yükleme
Şimdi ise Jenkins'i kurmak için şu komutu kullanacağız:
kopyalasudo apt install jenkins
Yükleme tamamlandığında Jenkins servisi otomatik olarak başlar. Bunun çalışıp çalışmadığını kontrol etmek için şu komutu yazabilirsiniz:
kopyalasudo systemctl status jenkins
Eğer her şey yolunda giderse, Jenkins başarıyla kurulmuştur!
Jenkins Web Arayüzüne Erişim
Kurulum bitti, fakat Jenkins'i kontrol etmek için terminalden çok daha pratik bir yol var: Web arayüzü! Jenkins, varsayılan olarak 8080 portu üzerinden çalışır. Bu nedenle, tarayıcınızda şu URL'yi ziyaret edebilirsiniz:
http://localhost:8080
İlk kez açıldığında, Jenkins sizden "Unlock Jenkins" adı altında bir güvenlik anahtarı ister. Bu anahtar, aşağıdaki komutla terminalden alınabilir:
kopyalasudo cat /var/lib/jenkins/secrets/initialAdminPassword
Bu komut, Jenkins'in ilk kurulumunda verilen şifrenin çıktısını verecektir. Şifreyi kopyalayın ve web arayüzüne yapıştırın. Ardından "Continue" butonuna tıklayın.
Jenkins İçin İlk Kullanıcıyı Oluşturma
Jenkins'e başarıyla eriştikten sonra, sistem sizden ilk kullanıcıyı oluşturmanızı isteyecektir. Bu adımda kendinize bir kullanıcı adı ve parola belirleyin. Ayrıca Jenkins'in en iyi şekilde çalışabilmesi için bazı temel eklentileri yüklemeniz istenecektir. Bu eklentileri yüklemek için önerilen eklentileri seçebilir veya manuel olarak farklı eklentiler ekleyebilirsiniz.
Adım 4: CI/CD Pipeline'ınızı Kurma
Jenkins kuruldu ve erişime açıldı, şimdi sırada CI/CD pipeline'ınızı kurmak var. Jenkins ile CI/CD işlemi oldukça basittir, sadece birkaç adımda işlemi tamamlayabilirsiniz.
Adım 5: GitHub ile Entegrasyon
Bir CI/CD süreci kurarken en önemli adımlardan biri kaynak kodunuzu bir versiyon kontrol sistemine entegre etmektir. Bu yazıda GitHub kullanacağız. Öncelikle, Jenkins'in GitHub ile iletişim kurabilmesi için GitHub plugin'ini yüklemeniz gerekir. Eklentiyi yükledikten sonra Jenkins’inize GitHub repository'nizi bağlayabilirsiniz.
Adım 6: İlk Pipeline'ınızı Oluşturma
Yeni bir Jenkins job'ı oluşturun ve "Freestyle project" seçeneğini tercih edin. Ardından GitHub repository’nizi bu job’a bağlayın. Jenkins, kodu her commit ettiğinizde otomatik olarak derlemeyi başlatacak.
Bu basit adımlarla Jenkins, CI/CD sürecinizi başlatmaya hazır. Ancak bununla sınırlı kalmayın. Jenkins'te otomatik testler, deploy işlemleri ve daha fazlasını ekleyebilirsiniz.
Sonuç
Jenkins ile Linux üzerinde CI/CD süreçlerinizi kolaylıkla yönetebilirsiniz. Hem yazılım geliştirme sürecini hızlandırır hem de hataları minimize edersiniz. Artık her commit sonrası derleme ve test işlemleri otomatikleşti. Sizin yapmanız gereken tek şey, yazılımınızı yazmaya devam etmek. Jenkins gerisini halleder!