Docker CLI kullanarak azure kapsayıcı kayıt defterinize ilk görüntünüzü gönderme

Azure kapsayıcı kayıt defteri, Docker Hub'ın genel Docker kapsayıcı görüntülerini depolama yöntemine benzer şekilde özel kapsayıcı görüntülerini ve diğer yapıtları depolar ve yönetir. Kapsayıcı kayıt defterinizde oturum açma, gönderme, çekme ve diğer kapsayıcı görüntü işlemleri için Docker komut satırı arabirimini (Docker CLI) kullanabilirsiniz.

Aşağıdaki adımlarda bir genel Nginx görüntüsü indirir, özel Azure kapsayıcı kayıt defteriniz için etiketler, kayıt defterinize gönderir ve ardından kayıt defterinden çekersiniz.

Önkoşullar

  • Azure aboneliği. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir hesap oluşturun.
  • Azure aboneliğinizdeki bir Azure kapsayıcı kayıt defteri. Azure portalını, AzureCLI'yı veya Azure PowerShell'i kullanarak oluşturabilirsiniz.
  • Ayrıca sisteminizde yerel olarak Docker yüklü olması gerekir. Docker macOS, Windows veya Linux'ta Docker'ı kolayca yapılandırmanızı sağlayan paketler sağlar.

Kapsayıcı kayıt dizininizde oturum açın

Kapsayıcı kayıt defterinizde kimlik doğrulaması yapmanın çeşitli yolları vardır .

Komut satırında çalışırken önerilen yöntem , az acr login Azure CLI komutunu kullanmaktır. adlı myregistrybir kayıt defterine erişmek için Azure CLI'da oturum açın ve kayıt defterinizde kimlik doğrulaması yapın:

az login
az acr login --name myregistry

Kullanarak docker login ile de oturum açabilirsiniz. Kimlik doğrulama kimlik bilgilerini yönetmeye yönelik en iyi yöntemler için docker oturum açma komutu başvurusuna bakın.

Örneğin, otomasyon senaryosu için kayıt defterinize bir hizmet sorumlusu atamış olabilirsiniz. Aşağıdaki komutu çalıştırdığınızda, istendiğinde hizmet sorumlusu appID 'sini (kullanıcı adı) ve parolayı etkileşimli olarak sağlayın:

docker login myregistry.azurecr.io

İpucu

Kayıt defterine göndermek için docker login kullandığınızda ve görüntüleri etiketlediğinizde her zaman eksiksiz kayıt defteri adını (tümü küçük harfle) belirtin. Bu makaledeki örneklerde tam nitelikli ad myregistry.azurecr.io.

Açık bir Nginx imajı çekme

İlk olarak, yerel bilgisayarınıza genel bir Nginx görüntüsü çekin. Bu örnek resmi Nginx görüntüsünü çeker.

docker pull nginx

Kapsayıcıyı yerel olarak çalıştırın

8080 numaralı bağlantı noktasında Nginx kapsayıcısının yerel örneğini etkileşimli olarak () başlatmak için -it komutunu kullanın. --rm bağımsız değişkeni, kapsayıcıyı durdurduğunuzda kaldırılması gerektiğini belirtir.

docker run -it --rm -p 8080:80 nginx

Varsayılan web sayfasını görüntülemek için çalışan kapsayıcıda Nginx tarafından sunulan http://localhost:8080 adresine gidin. Aşağıdakine benzer bir sayfa görmeniz gerekir:

Yerel bilgisayarda Nginx

Kapsayıcıyı -it ile etkileşimli olarak başlattığınız için, tarayıcınızda ona gittikten sonra Nginx sunucusunun çıktısını komut satırında görebilirsiniz.

Kapsayıcıyı durdurmak ve kaldırmak için tuşuna basın Ctrl+C.

Görüntünün diğer adını oluştur.

Görüntüye kayıt defterinizdeki tam yolla bir takma ad oluşturmak için docker tag komutunu kullanın. Bu örnek, kayıt defterinin kökünde dağınıklığı önlemek için samples ad alanını belirtir.

docker tag nginx myregistry.azurecr.io/samples/nginx

Ad alanlarıyla etiketleme hakkında daha fazla bilgi için bkz. depo ad alanları en iyi yöntemleri](container-registry-best-practices.md#repository-namespaces).

Görüntüyü kayıt deposuna yükleyin

Görüntüyü özel kayıt defterinizin tam yoluyla etiketlediğinize göre, docker push ile kayıt defterine gönderebilirsiniz:

docker push myregistry.azurecr.io/samples/nginx

Görüntüyü kayıt defterinizden çekme

Görüntüyü kayıt defterinizden çekmek için docker pull komutunu kullanın:

docker pull myregistry.azurecr.io/samples/nginx

Nginx kapsayıcısını başlatma

Kayıt defterinizden çektiğiniz görüntüyü çalıştırmak için docker run komutunu kullanın:

docker run -it --rm -p 8080:80 myregistry.azurecr.io/samples/nginx

Çalışan kapsayıcıyı görüntülemek için http://localhost:8080 adresi üzerinden gidin.

Kapsayıcıyı durdurmak ve kaldırmak için tuşuna basın Ctrl+C.

Görüntüyü kaldırma (isteğe bağlı)

Nginx görüntüsüne artık ihtiyacınız yoksa docker rmi komutuyla yerel olarak silebilirsiniz.

docker rmi myregistry.azurecr.io/samples/nginx

Azure kapsayıcı kayıt defterinizden görüntüleri kaldırmak için kullanın az acr repository delete. Örneğin, aşağıdaki komut samples/nginx:latest etiketi tarafından başvurulan manifestoyu, eşsiz katman verilerini ve manifestoya başvuran diğer tüm etiketleri siler.

az acr repository delete --name myregistry --image samples/nginx:latest

Sonraki adımlar

Temel bilgileri öğrendiğinize göre artık kayıt defterinizi kullanmaya başlayabilirsiniz. Örneğin, kapsayıcı görüntülerini kayıt deposunuzdan aşağıdakilere dağıtın: