Takip et

Jenkins ile Tam Bir 3 Katmanlı Uygulamanın Dağıtımı: Kapsamlı Bir Kılavuz

Jenkins ile Tam Bir 3 Katmanlı Uygulamanın Dağıtımı: Kapsamlı Bir Kılavuz

Merhaba! Bu makalede, Jenkins kullanarak bir 3 katmanlı uygulamayı nasıl dağıtacağınızı adım adım ele alacağız. 3 katmanlı mimari, uygulamaların ayrı ayrı katmanlar halinde yapılandırılmasını sağlar. Bu katmanlar, sunum, iş mantığı ve veritabanı gibi görevleri ele alır. Bu yaklaşım, sürdürülebilirliği, bakımı ve ölçeklenebilirliği artırır. Jenkins, otomasyon görevlerini, özellikle sürekli entegrasyon/sürekli dağıtım (CI/CD) süreçlerini yönetmek için güçlü bir araçtır.

3 Katmanlı Mimari ve Jenkins

3 katmanlı uygulamalar, genellikle aşağıdaki katmanlardan oluşur:

  • Sunum Katmanı: Kullanıcı arayüzünü (UI) sağlar, kullanıcı etkileşimlerini işler ve iş mantığı katmanına istekler gönderir.
  • İş Mantığı Katmanı: Uygulamanın iş kurallarını ve işlevselliğini içerir. Veritabanı katmanıyla etkileşim kurar ve sunum katmanına yanıtlar döndürür.
  • Veritabanı Katmanı: Uygulama verilerini depolar ve alır. İş mantığı katmanıyla etkileşim kurar.

Jenkins, bu katmanların dağıtımını otomatikleştirerek CI/CD sürecini kolaylaştırır. Uygulama kodunun derlenmesi, test edilmesi, paketlenmesi ve ilgili katmanlara dağıtılması gibi görevler Jenkins iş akışları aracılığıyla otomatikleştirilebilir.

Adım Adım Dağıtım Süreci

Şimdi, Jenkins’i kullanarak bir 3 katmanlı uygulamayı dağıtmak için adım adım bir kılavuza geçelim:

1. Jenkins Kurulumu

Jenkins’i kurmanız gerekecektir. Bunun için çeşitli yöntemler mevcuttur:

  • Paket Yöneticileri: Linux veya macOS sistemlerinde paket yöneticilerini kullanarak Jenkins’i kurabilirsiniz. Örneğin, Debian/Ubuntu’da “sudo apt install jenkins” komutunu kullanabilirsiniz.
  • Docker: Docker kullanarak Jenkins’i kolayca çalıştırabilirsiniz. “docker run -d -p 8080:8080 jenkins/jenkins:lts” komutu Docker’da Jenkins’i başlatacaktır.
  • War Dosyası: Jenkins’i war dosyasını web sunucusu (Tomcat, Jetty gibi) üzerinde çalıştırarak kurabilirsiniz.

2. Jenkins Yapılandırması

Jenkins’i kurduktan sonra, bazı yapılandırmalar yapmanız gerekir. Bunlar şunları içerir:

  • Kullanıcı Oluşturma: Güvenlik için Jenkins’e bir kullanıcı hesabı oluşturun.
  • Eklenti Yükleme: Jenkins’in çeşitli işlevleri sağlayan eklentiler yükleyin. Örneğin, Git eklentisi Git depolarından kod çekmek için kullanılır.
  • İş Akışı Oluşturma: Jenkins’te bir iş akışı oluşturun. Bu iş akışı, uygulamanın dağıtım aşamalarını otomatikleştirecektir.

3. Dağıtım İş Akışı

Jenkins’te bir dağıtım iş akışı oluşturduktan sonra, adımları yapılandırmanız gerekir:

  • Kod Alma: Jenkins, Git gibi bir sürüm kontrol sisteminden uygulamanın kaynak kodunu almalıdır.
  • Derleme ve Paketleme: Jenkins, uygulamayı derlemeli ve bir dağıtım paketi (örneğin, WAR dosyası) oluşturmalıdır.
  • Test Otomasyonu: Jenkins, uygulamanın düzgün çalıştığını doğrulamak için otomatik testler çalıştırmalıdır.
  • Dağıtım: Jenkins, derlenmiş ve paketlenmiş uygulamayı ilgili sunuculara dağıtmalıdır.

4. Dağıtım Ortamı

Uygulamayı farklı ortamlara (geliştirme, test, üretim) dağıtmanız gerekebilir. Jenkins, bu ortamları yapılandırmanıza ve farklı ortamlara farklı dağıtım adımları uygulayabilmenize olanak tanır.

5. Sürekli İzleme

Jenkins, dağıtılmış uygulamanın performansını ve sağlığını izlemek için kullanılabilir. Bu, hata ayıklama ve sorun giderme için önemlidir.

Ornek Dağıtım Senaryosu

Bir 3 katmanlı web uygulamasını dağıtmak için bir örnek senaryo ele alalım:

  1. Sunum Katmanı: Angular veya React gibi bir ön uç çerçevesi kullanılarak oluşturulan bir web uygulaması.
  2. İş Mantığı Katmanı: Spring Boot veya Node.js gibi bir çerçeve kullanılarak oluşturulan bir RESTful API.
  3. Veritabanı Katmanı: PostgreSQL veya MySQL gibi bir ilişkisel veritabanı yönetim sistemi (RDBMS).

Jenkins, bu katmanların dağıtımını otomatikleştirmek için kullanılabilir. Jenkins iş akışı şunları içerebilir:

  • Sunum Katmanı: Angular veya React uygulamasını derleyin ve bir statik dosya paketi oluşturun.
  • İş Mantığı Katmanı: Spring Boot veya Node.js uygulamasını derleyin ve bir WAR veya JAR dosyası oluşturun.
  • Veritabanı Katmanı: Veritabanı şemalarını dağıtmak ve verileri yapılandırmak için SQL betiklerini çalıştırın.
  • Dağıtım: Ön uç paketini, REST API’yi bir uygulama sunucusuna ve veritabanı şemalarını veritabanına dağıtın.

Sonuç

Jenkins, 3 katmanlı uygulamaların dağıtımını otomatikleştirmek için çok güçlü bir araçtır. CI/CD süreçlerini uygulayarak, geliştirme süreçlerinizi hızlandırabilir, hata risklerini azaltabilir ve uygulamalarınızın daha hızlı bir şekilde piyasaya sürülmesini sağlayabilirsiniz. Bu makalede bahsedilen adımları uygulayarak, Jenkins’i kullanarak kendi 3 katmanlı uygulamalarınızı başarıyla dağıtabilirsiniz.

Daha fazla bilgi için, fatihsoysal.com web sitesini ziyaret edebilirsiniz.

#Etiketler
3 katmanlı uygulama, Jenkins, CI/CD, Dağıtım, Otomasyon, DevOps, Web Uygulaması, Sunum Katmanı, İş Mantığı Katmanı, Veritabanı Katmanı, Angular, React, Spring Boot, Node.js, PostgreSQL, MySQL

Yorumlar
İçeriği beğendiniz mi? Bir tartışma başlatın veya görüşlerinizi paylaşın.
Yorum Yaz

Bir yanıt yazın

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

E-posta Bülteni
Yazılım Topluluğuna Katılın
En son güncellemeleri, yaratıcı ipuçlarını ve özel kaynakları doğrudan e-posta kutunuza alın. Tasarım ve inovasyonun geleceğini birlikte keşfedelim.