JFrog Artifactory nedir? Docker Registry Yapılandırılması

JFrog Artifactory yelpazesi çok geniş olan bir repository yönetim sistemidir.Maven,NPM,nuget gibi binary paketlerinden tutun, docker imagelarınızı bile tutabilirsiniz.Yakın zamanda BKM’de kullandığımız Konteyner image’larını JFrog artifactory üzerine taşıdık.Bu konuda belki sizlerinde işinize yarar maksadıyla ufak bir makale oluşturuyorum.Siz içerde bir sanal makine üzerinde JFrog artifactory’i kullanıyor olabilirsiniz, ben bu makalede Docker için hazırlamış oldukları Image aracılığıyla göstermeye çalışacağım.Öncelikle Docker kurulu bir makineniz olması gerekiyor.Sitelerinde birden çok kurulum yöntemi mevcut.

Ben alttaki komutu çalıştırarak kuruluma başlıyorum.

curl https://jfrog.bintray.com/run/art-compose/latest/art-compose |
sudo bash

Kurulum tamamlandıktan sonra browser üzerinden alttaki adrese gidiyoruz.

https://youripadress/artifactory

Elinizde bulunan lisansı girebilir yada trial bir lisans temin edebilirsiniz.

Girişte kullanacağımız admin şifresini tanımlıyoruz.

Burda biz makale konumuz olan Docker’ı seçeceğiz.Daha önce de bahsettiğim gibi bir çok ürün için repository oluşturabilirsiniz.Kubernetes ile ilgileniyorsanız Helm paketlerinizi bile tutabilirsiniz.

Kurulum tamamlandıktan sonra karşıma birkaç tane Docker repo’su çıkarttı.

docker-local: Bizim kendi push ettiğimiz image’ların tutulduğu klasör

docker-remote: docker hub ve diğer image repositorylerden çektiğiniz imageların tutulduğu repo

Kullanmaya başlamadan önce host dosyamıza alttaki tanımları ekliyoruz.

34.242.47.85   emreozkan1c.mylabserver.com artifactory docker.artifactory docker-local.artifactory docker-remote.artifactory

Diğer bir adım docker dosyamıza alttaki satırları ekliyorum.Sonrasında docker servisini restart etmeniz gerekiyor.

#vi /etc/default/docker
DOCKER OPTS="$DOCKER_OPTS --insecure-registry docker-local.artifactory --insecure-registry docker-remote.artifactory --insecure-registry docker.artifactory"
#systemctl restart docker

Login oluyoruz.

root@emreozkan1c:/home/cloud_user# docker login docker.artifactory
Username: admin
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store
Login Succeeded

Deneme amaçlı nginx image’ını çekiyorum.

root@emreozkan1c:/home/cloud_user# docker pull docker.artifactory/nginx:latest
latest: Pulling from nginx
f5d23c7fed46: Pull complete
918b255d86e5: Pull complete
8c0120a6f561: Pull complete
Digest: sha256:dc85890ba9763fe38b178b337d4ccc802874afe3c02e6c98c304f65b08af958f
Status: Downloaded newer image for docker.artifactory/nginx:latest

Sonrasında GUI üzerinden Docker-remote repository içine geldiğini görüyorum.

root@emreozkan1c:/home/cloud_user# docker images docker.artifactory/nginx
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.artifactory/nginx latest e445ab08b2be 3 days ago 126MB

Yada kendi oluşturduğumuz image’ı artifactory’e push edebiliriz.

--

--