Docker İmaj Dosyalarını Yüklemek ve Kullanmak

Çoğu zaman Docker imajlarını dosya olarak Docker Hub gibi farklı registry’ler üzerinden çekiyoruz. Hatta docker run gibi komutlar, eğer çalıştığı sunucu/bilgisayar üzerinde ilgili imaj mevcut değilse, otomatik olarak gidip indirmeye çalışıyor. Kurumsal olan veya olmayan birçok ortamda da, çoğunlukla sadece şirketin iç ağından ulaşılabilecek birer container registry kuruluyor. Buna rağmen, bazı durumlarda doğrudan bir yerden imajı çekmek mümkün olmayabiliyor. Örneğin, bazı üreticiler ürünlerini dağıtırken Docker imajlarını doğrudan tar uzantılı olarak indirebileceğiniz formatta veriyor. Böyle durumlarda, imajı kullanıp container açabilmek için önce Docker’a yüklemek (load) gerekiyor.

Elinizde bir imaj için tar dosyası yoksa, veya bu yazıdakinin tam tersi olarak bir imajı dosya olarak kaydetmek istiyorsanız, Docker İmajını Dosya Olarak Kaydetmek yazısını inceleyebilirsiniz.

Nasıl Yaparız?

Varolan bir Docker imaj dosyasını yüklemek için docker load komutunu kullanacağız. Docker load komutu, tar arşiv formatında bir giriş bekliyor. (Bu komut, hiçbir parametre olmadan kullanıldığıdında kendisine verinin stdout üzerinden verilmesine ayarlı.) Komuta vereceğimiz -i parametresiyle, yüklemek istediğimiz dosyayı söylüyoruz.

Kullanım Örneği

Docker imajını içeren tar dosyasına ihtiyacımız var. Dosya bulunduğumuz dizinde ve ismi imaj.tar olsun.

Eğer örneği tamamlamak için bir dosyanız yoksa, öncesinde oluşturmak/indirmek için bu yazıdan yararlanabilirsiniz.

Öncelikle imajın sistemde var olup olmadığını kontrol edelim:

$ docker image ls | grep benkimim

Bu komutun sonundaki benkimim kelimesini kendi imajınızı arayacak şekilde değiştirebilirsiniz. Sonuç boş çıkmalı veya en azından içeriye aktarmak istediğiniz imajı içermemelidir(içerirse yaptığımız işlemin olup olmadığını anlamak daha zor olabilir).

Dosyayı yükleyelim:

docker load -i imaj.tar 

Doğrulamak için, tekrar grep komutundan faydalanabiliriz:

$ docker image ls | grep benkimim

Her şey yolunda gittiyse artık yeni yüklenen imajı görmeniz gerekiyor.

Kullanırken, normalde sistemde varolan veya indirdiğiniz, Docker üzerine kurulu olan herhangi bir Docker imajıyla aynı şekilde kullanabilirsiniz.

Sonuç

Docker load komutu ile, kendimiz kaydettiğimiz veya dışarıdaki bir yerden direkt indirebileceğimiz imaj dosyalarını Docker içerisine yükleyebiliyoruz.

Leave a comment