Jenkins ile Docker Entegrasyonu

Jenkins ile Docker entegrasyonu için SSH servisini kullanacağız. Bu işlemi gerçekleştirebilmek için Jenkins uygulamamıza ssh eklentisi yükleyip ilgili konfigurasyonları yapalım,

Sırasıyla Manage Jenkins -> Manage Plugins menülerine giriş yapalım,

Eklenti yükleyebilmek için açılan sayfa üzerinden Available menüsüne tıklayıp arama butonu üzerinden Publish Over SSH eklentisini seçip, Install without restart butonu ile kurulumu gerçekleştirelim,

Docker erişimi için docker sunucumuz üzerinde bir adet kullanıcı oluşturup, oluşturulan kullanıcıyı docker grubuna ekleyelim,

useradd ile kullanıcımızı oluşturalım, passwd kullanıcı adı ile oluşturulan kullanıcımıza parola atayalım, usermode -aG grupadı kullanıcıadı komutu ile hedef gruba belirtilen kullanıcıyı ekleyelim, id grupadı ile de grup içerisindeki üyelikleri kontrol edelim,

useradd dockeradmin

passwd dockeradmin

usermod -aG docker dockeradmin

id dockeradmin

İşlemleri gerçekleştirdikten sonra tekrardan Jenkins uygulamamızı açıp, Manage Jenkins, Configure System menüsüne giriş yapalım. Bu işlemden önce docker sunucumuz üzerinde ip addr komutu ile AWS üzerinde tanımlı olan internal ip adresimizi bir kenara not edelim konfigurasyonlarımızı sunucular arasında internal network üzerinden gerçekleştireceğiz,

Sayfanın altında bulunan SSH Servers menüsünden tanımlamalarımızı gerçekleştirebiliriz, name alanına sunucu adı, hostname alanına internal ip adresimiz, username alanına docker servislerine erişecek yeni oluşturduğumuz kullanıcımızı yazalım, User password authentication kutucuğunu seçtikten sonra password alanına kullanıcı parolamızı yazalım ve en aşağıda bulunan Test configuration butonuna tıklayalım,

Gördüldüğü üzere hata aldık çünkü ssh servisimizde kullanıcılarımızın ssh yapmasına şuan için verilmiş bir izin tanımlı değil,

vi editörü ile /etc/ssh/sshd_config dosyamızı açalım,

dosya içerisinde bulunan PasswordAuthentication alanında bulunan no yazılı alanı yes olarak değiştirip :wq komutu ile işlemlerimizi kayıt edip çıkalım,

Yapılan değişikliğin geçerli olması için ssh servisini yeniden başlatalım,

service sshd reload

komutunu kullanarak işlemi gerçekleştirebiliriz,

Jenkins üzerinde tekrardan test configuration butonu ile testimizi yaptığımızda bağlantının sağlandığını göreceğiz,

Başka bir yazımızda görüşmek üzere,

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir