Docker Save – Load & Registry

Selamlar arkadaşlar bu yazımda sizlere Docker Save ve Load komutlarını anlatıyor olacağım. Bunun yanı sıra birde Docker Registry’i kuracağız ve kendi image’larımızı depoluyor olacağız. İlk olarak kısa açıklamalar ile komutlarımızdan biraz bahsedeyim.

Docker Save – Load Komutları :

İnternetimizin olmadığı ortamlarda bulunan Docker cihazlarımız için Image’larımızı taşıyabilir ve Containerlar oluşturabiliriz. Bunu Export ve Import işlemi gibide düşünebiliriz. Save komudu ile Image’ımızı tar formatında kayıt ediyoruz ve daha sonra cihazlarımız arasında taşıyarak Load komutu ile Import işlemi yapmış oluyoruz.

Docker Registry :

Docker Registry ücretsiz olarak, Image’lerimizin depolanmasını ve dağıtılmasını sağlar. Bu sayede Image’larımız merkezi bir alanda toplanır ve farklı ortamlarada dağıtılması sağlanır. Registry sayesinde Image’lerimizi kolayca paylaşabilir, yönetebilir ve güncelleyebiliriz.

Üç farklı Registry bulunmaktadır. Bunlardan ilki Docker Hub tabi ki. Private Docker Registry ise bizim kurduklarımız ve son olarak Third Part Registry’lerdır. Bizim kurduğumuz ise Private olarak adlandırılıcaktır.

İlk olarak Save ve Load komutları ile başlıyoruz :

> docker image ls
> docker save -o save-imageimiz.tar arg-imageimiz

Save komudu yardımıyla Image’ımızı tar formatında dışarı alıyoruz. -o’dan sonra girmiş olduğumuz isim Export edilecek tar ismi iken, sonrasında girilen isim ise cihazımızda bulunan image’in adıdır.

> docker image prune -a
> docker image ls
> docker load -i save-imageimiz.tar
> docker image ls

Sonrasında ise prune komudu ile cihazımda bulunan tüm Image’leri sildim. Siz bunu yapmadan farklı bir Docker cihaza taşıyabilir ve orada Docker Load komudu ile Image dosyanızı Import edebilirsiniz. -i den sonra yazacağınız isim ise tar’lı dosyanız olacaktır. Loaded image yazısını görmeniz durumunda işlem başarılı şekilde yapılmıştır.

Bu şekilde komutları kullanabilirsiniz.

Şimdi ise Docker Registry’i Çalıştıracağız :

> docker run -d -p 5000:5000 --restart always --name registry registry:2

İlk olarak yukarıdaki kodu kullanarak registry’i yüklemeniz gerekmektedir.

–restart parametresinin alabildiği özellikler : Bu özelliğin kullanılma sebebi bir Container exit olursa aksiyon alınıp, alınmaması konusunda bize yardımcı oluyor.

always : Exit olması durumunda her zaman yeniden başlat.
no : Herhangi bir işlem yapma.
on-failure : Hata durumunda yeniden başlat.
unless-stopped : Container’ımız manuel olarak stop durumunu getirirse başlatılmaz, şeklindedir.

Ayrıca ayrıntılı bilgileri buraya tıklayarak Docker Hub üzerinden de erişebilirsiniz.

Yükleme işlemi bittikten sonra http://127.0.0.1:500/v2/_catalog linki ile cihazınızdan ulaşım sağlayabilirsiniz. Burada herhangi bir image’ın olmadığını görebiliyoruz.

> docker tag arg-imageimiz:latest 127.0.0.1:5000/arg-imageimiz:latest
> docker image ls
> docker image push 127.0.0.1:5000/arg-imageimiz:latest

İlk olarak image’imizi Docker Tag komutunu kullanarak, ilk olarak var olan Image adımızı Tag alanı ile giriyoruz ve bir boşluk bıraktıktan sonra registry_name/image_adımız:tag şeklinde yukarıdaki örnekteki gibi yazıyoruz. Bu şekide Registry alanına atılacak olan Image’ımızı belirlemiş oluyoruz. Sonrasında ise Docker Image Push komudumuz ile yeni Tag oluşturduğumuz Image’ımızı Registry alanımıza yolluyoruz.

Daha sonra tekrar Registry alanınızı kontrol ettiğiniz’de Image dosyanızın buraya yüklendiğini göreceksiniz.

Yüklenen bu Image dosyalarınızı tekrar çekmek isterseniz ise aşağıdaki komudu kullanmalısınız.

> docker pull 127.0.0.1:5000/arg-imageimiz:latest

Aynı isim kalıbını tekrar kullanarak Docker Pull yardımı ile cihazınıza indirebilirsiniz bu Image’ımızı.

Evet arkadaşlar bu yazımda bu kadar. Umarım yararlı bilgiler vermişimdir. Soru ve görüşleriniz olması durumunda bana yorumlar alanından iletebilir. Destek vermek istersenizde Reklamlarıma bir tık sonrası YouTube üzerinde bulunan SistemDostu kanalıma abone olabilirsiniz. Herkese kolaylıklar dilerim.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir