Docker Private Registry Push

Docker imajlarınızı saklamak için private repository kullanıyorsanız, repo'ya göndermeden önce tag almanız gerekiyor.

İster build komutu ile yeni yarattığınız olsun isterse başka yerden pull ettiğiniz imajlar olsun fark etmiyor.

build aşamasında -t parametresi ile tek seferde yapabilirsiniz. Aşağıdaki komut yeni bir imaj yaratıp ismini localhost:5000/ubuntu/nginx tag'ini de latest yapacaktır.

docker build -t localhost:5000/nginx:latest .
docker push localhost:5000/nginx:latest

Bu komut --insecure-registry kullandığınızı varsayıyor. Eğer registry secure ise yapmanız gereken tek şey port ve image-name arasına username bilgisini eklemek. Yani aşağıdaki şekilde yazabiliriz.

docker build -t localhost:5000/my-user-name/nginx:latest .
docker push localhost:5000/my-user-name/nginx:latest

Bu işlemi sonradan docker tag komutu kullanarak yapmak da çok kolay. Bu komutun yazım şekli şöyle:

docker tag [OPTIONS] IMAGE[:TAG] [REGISTRYHOST/][USERNAME/]NAME[:TAG]

Örnek olarak şu şekilde yazabiliriz.

docker tag 59a7d4591b0f localhost:5000/nginx:latest

Bazı durumlarda daha önceden aynı name:tag kullanılmış olabilir. Bu durumda -f parametresini eklerseniz üstüne yazacaktır.

Sonrasında yine aynı şekilde docker push komutunu çalıştırabiliriz.

docker push localhost:5000/nginx:latest