DEV Community

Suleyman
Suleyman

Posted on • Edited on

HARBOR REGİSTRY IMAGE PUSH VE PULL ETME İŞLEMLERİ

HARBOR REGİSTRY IMAGE PUSH VE PULL ETME İŞLEMLERİ

Merhaba,

Bu makale bir önceki makalenin devam niteliğindedir. Önceki makalede oluşturduğumuz private registry ye docker konteynerımızı push edip, çekme işlemlerini gerçekleştireceğiz.

Öncelikle arayüz kısmında bir docker ‘ ın bu registry ’ e login olabilmesi için bir kullanıcı oluşturmamız gerekiyor. Sol taraftan Users> New Users sekmesinden yeni bir kullanıcı oluşturabiliriz.

Image description

Şimdi yeni bir repository oluşturmamız gerekiyor. Sol taraftan Projects > New Project ile yeni bir repository oluşturabiliriz.

Image description

Şimdi benim daha önceden olusturmuş olduğum basit bir Dockerfile mevcut. Aşağıdaki gibi 2 satırdan oluşmaktadır. Nginx in varsayılan sayfası

FROM nginx:latest
COPY ./index.html /usr/share/nginx/html
Enter fullscreen mode Exit fullscreen mode

İndex.html içinde de aşağıdaki bir içerik mevcut. Nginx in varsayılan sayfasının içeriği aşağıdaki olacaktır.

<!DOCTYPE html>
<html>
<body>
  <h1>
    <p>Bu sayfa Harbor Sayfasi Icin Olusturulmustur.</p>
  </h1>
</body>
</html>
Enter fullscreen mode Exit fullscreen mode

Öncelikle bu Dockerfile yi build etmem gerekecek. Aşağıdaki komutla build ediyorum.

docker build -t harbor.suleymanakturk.com.tr/testrepo/suleymanharporcontainer:latest .
Enter fullscreen mode Exit fullscreen mode

“Docker images” komutunu çalıştırdığımızda aşağıdaki gibi image mizin oluşmuş olması gerekmektedir.

Image description

Artık image mizi harbora gönderme zamanı geldi. Öncelikle aşağıdaki komutla harbor repository’e login oluyoruz ve bize kullanıcı ve parola soracak. Harbor üzerinde oluşturduğumuz kullanıcı ve parolasını giriyoruz.

docker login harbor.suleymanakturk.com.tr 
Enter fullscreen mode Exit fullscreen mode

Image description

Yukarı şekilde “Login Succeeded” ifadesinin çıkması gerekmektedir.

Harbor üzerinde Project sekmesine tıklayıp , ardından oluşturduğumuz repository ye tıklayıp , PUSH COMMAND sekmesine tıkladığımızda bize aşağıdaki gibi bir komut gösterecektir. Biz bunu kendi image mize göre düzenlememiz gerekiyor. Sadece image ismi farklı olacaktır.

docker push harbor.suleymanakturk.com.tr/testrepo/REPOSITORY[:TAG]

Aşağıdaki komutla push ediyoruz.

docker push harbor.suleymanakturk.com.tr/testrepo/harportestcontainer:latest
Enter fullscreen mode Exit fullscreen mode

Push ettiğimiz imagemiz artık harbor arayüzünde de gözüküyor.

Image description

Şimdi image’mizin üzerine tıklayıp karşımıza çıkan sha256:xxx şeklinde objeyi secip PULL COMMAND ‘ a tıklıyoruz ve kopyalıyoruz. Artık bu komutla bu imageyi docker sunucumuza pull edebiliriz.

Eğer push ettiğimiz bir konteynerı güvenlik taramasından geçirmek istersek aşağıdaki komutla bir güvenlik toolunu harbor üzerine yükleyebiliriz. Harborun olduğu sunucuda bunu çalıştırmamız gerekiyor.

./install.sh --with-trivy
Enter fullscreen mode Exit fullscreen mode

Image description

Image’mize tıklayıp SCAN diyoruz ve image’nin güvenlik açıklarını bizim için listeleyecektir. Bizlerde bu güvenlik açıklarını kapatmaya çalışmamız gerekiyor.

Harbor’a image push etme ve pull etme işlemleri bu kadar.

İyi günler.

Top comments (0)