Docker CLI kullanarak azure kapsayıcı kayıt defterinize ilk görüntülerinizi itme

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

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

Önkoşullar

  • Azure kapsayıcısı kayıt defteri -Azure aboneliğinizde bir kapsayıcı kayıt defteri oluşturun. Örneğin, Azure portal, Azure CLIveya Azure PowerShell.
  • Docker CLI - Docker'ı yerel olarak da yüklemişsinizdir. Docker macOS, Windows veya Linux'ta Docker'ı kolayca yapılandırmanızı sağlayan paketler sağlar.

Kayıt defterinde oturum açma

Özel kapsayıcı kayıt defterinize kimlik doğrulaması yapmak için birkaç yol vardır.

Komut satırı üzerinde çalışırken önerilen yöntem az acr login Azure CLI komutuyladır. Örneğin, myregistry adlı bir kayıt defterinde oturum açmak için Azure CLI'de oturum açmak ve ardından kayıt defterinizin kimliğini doğrulamak için:

az login
az acr login --name myregistry

Ayrıca docker oturum açma bilgileriyle de oturum aç girin. Örneğin, bir otomasyon senaryosu için kayıt defterinize bir hizmet sorumlusu atayabilirsiniz. Aşağıdaki komutu çalıştırarak, istendiğinde hizmet sorumlusu appID'lerini (kullanıcı adı) ve parolayı etkileşimli olarak girin. Oturum açma kimlik bilgilerini yönetmeye yönelik en iyi yöntemler için bkz. docker oturum açma komutu başvurusu:

docker login myregistry.azurecr.io

Her iki komut da tamamlandığında Login Succeeded geri döner.

Not

  • Daha hızlı ve daha Visual Studio Code oturum açma için Docker uzantısıyla oturum açma bilgilerini kullanmak iyi olabilir.

İpucu

Görüntüleri kullanarak kayıt defterinize itmek üzere etiketlerken her zaman tam kayıt defteri adını (tamamı küçük docker login harf) belirtin. Bu makaledeki örneklerde, tam ad myregistry.azurecr.io.

Genel Nginx görüntüsünü çekme

İlk olarak, yerel bilgisayarınıza genel bir Nginx görüntüsü çekin. Bu örnek, bir görüntüyü Microsoft Container Registry.

docker pull mcr.microsoft.com/oss/nginx/nginx:1.15.5-alpine

Kapsayıcıyı yerel olarak çalıştırma

8080 bağlantı noktası üzerinde Nginx kapsayıcısı yerel örneğini etkileşimli olarak ( ) başlatmak için aşağıdaki docker run -it komutunu yürütün. bağımsız --rm değişkeni, kapsayıcıyı durdurarak kaldırılması gerektiğini belirtir.

docker run -it --rm -p 8080:80 mcr.microsoft.com/oss/nginx/nginx:1.15.5-alpine

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

Yerel bilgisayarda Nginx

Kapsayıcıyı ile etkileşimli olarak başlattıktan sonra tarayıcınızdan komut satırına giderek Nginx sunucusunun -it çıkışını görebilirsiniz.

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

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

Görüntünün kayıt defterinizin tam yolunu kullanarak bir diğer ad oluşturmak için docker tag kullanın. Bu örnek, kayıt defterinin kökünde dağınıklığı önlemek için samples ad alanını belirtir.

docker tag mcr.microsoft.com/oss/nginx/nginx:1.15.5-alpine myregistry.azurecr.io/samples/nginx

Ad alanlarıyla etiketleme hakkında daha fazla bilgi için, en iyi depolama yöntemleri bölümünün Depo ad alanları bölümüne Azure Container Registry.

Görüntüyü kayıt defterinize itme

Artık görüntüyü özel kayıt defterinizin tam yolu ile etiketleyene göre, docker push ile kayıt defterine itebilirsiniz:

docker push myregistry.azurecr.io/samples/nginx

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

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

docker pull myregistry.azurecr.io/samples/nginx

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

Kayıt defterinize ç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 http://localhost:8080 kapsayıcıyı görüntülemek için gözatın.

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

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 görüntüyü yerel olarak silebilirsiniz.

docker rmi myregistry.azurecr.io/samples/nginx

Azure kapsayıcı kayıt defterinizin görüntülerini kaldırmak için az acr repository deleteAzure CLI komutunu kullanabilirsiniz. Örneğin, aşağıdaki komut etiket tarafından başvurulan bildirimi, benzersiz katman verilerini ve bildirime başvuran samples/nginx:latest diğer tüm etiketleri siler.

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

Sonraki adımlar

Temel bilgileri artık biliyorsunuz, kayıt defterinizi kullanmaya başlayabilirsiniz! Örneğin, kayıt defterinizin kapsayıcı görüntülerini şu şekilde dağıtın:

İsteğe bağlı olarak Azure kapsayıcı kayıt defterleriyle Visual Studio Code için Docker Uzantısı'Visual Studio Code Azure Hesabı uzantısını yükleyin. Görüntüleri azure kapsayıcı kayıt defterine çekin ve itin veya ACR Görevleri içinde çalıştırın Visual Studio Code.