Private Registry: Harbor Kurulumu ve Trivy ile image scanning

H. Alperen Selcuk
4 min readAug 30, 2022

--

Bu yazımda private image registry olarak harbor kurulumu göstereceğim.

private registry olarak Harbor kullanmak işinizi çok kolaylaştırıyor.

harbor sadece image atacağınız bir registry değil, ayrıca image scan için eklentilerle kurabiliyorsunuz. min req aşağıdaki gibidir.

PRE-REQ

Harbor için docker, docker-compose ve openssl kurulu olması gerekmektedir.

repomdaki aşağıdaki scriptten docker ve docker-compose için kurulum yapabilirsiniz. openssl i de apt-get ile yükleyeceğiz.

https://raw.githubusercontent.com/alperen-selcuk/docker-install/main/install-docker.sh

curl -s https://raw.githubusercontent.com/alperen-selcuk/docker-install/main/install-docker.sh | shsudo apt-get install openssl -y

HARBOR

sıradaki adım olarak harboru github release sayfasından installer ı indireceğiz.

buradan istediğiniz sürüm ve platform için dosya indirebiliriz. ben son sürüm kullanacağım.

wget https://github.com/goharbor/harbor/releases/download/v2.6.0/harbor-online-installer-v2.6.0.tgz

burada harbor.yml.tmpl diye bir template file var bunun içinde harborun ayarlarını yapıyoruz.

bu kısımda değiştireceğimiz bir kaç yer mevcut.

belirli bir hostname verip ardından https altında olan port, certificate ve private_key i command out ediyoruz.

daha sonra ismini değiştirerek install scriptini çalıştırıyoruz.

gerisini kendi hallediyor. ve her servisin UP olduğunu görüyoruz.

bu normal default yükleme şekli fakat bunun yanında harbor size ekstra pluginler de sunuyor. bunu da yükleme esnasında seçebiliyorsunuz. mesela clair, notary, chartmuseum ve trivy seçenekleri var. bunları da aşağıdaki komutla yapıyoruz.

./install.sh --with-trivy

trivy ile de yükleme yapalım.

trivy nin de yüklendiği göreeksiniz.

default olarak 80 portundan erişim sağlıyoruz sunucunuzun IP sine http isteği atarsak arayüz gelecek. default user admin password Harbor12345 şeklindedir.

mesela ubuntu için eski bir image bulalım ve onu repoya pushlayalım. default repo library olan. 3 yıllık bir image buldum. ”ubuntu:bionic-20190424"

öncelikle login oluyoruz.

daha sonra imagei indirip kendi repomuza göre tag değiştiriyoruz.

daha sonra pushluyoruz.

daha sonra arayüze gidip scan edebileceğiz. imagei seçerek scan dediğimizde kuyruğa alıp scan başlatıyor ve hızlıca scan ediyor.

scan sonrası üstüne geldiğinizde özel sayısını gösteriyor image içine girdiğinizde ise size CVE kodlarını veriyor.

CVE kodunu da açarsanız açıklama olarak bir özet beliriyor üstünü tıklarsanız sizi vuln ile alakalı aquasec in sayfasına yönlendiriyor.

bu sayede hızlı bir image scanning işlemi yapabilirsiniz. Harbor güzel kullanışlı bir private registry dev ortamları için tercih edebilirsiniz.

umarım yararlı bir yazı olmuştur.

bunun yanında Trivy i ci/cd de entergre etmek için daha önce yazdığım yazımı okuyabilirsiniz.

--

--