Hızlı Başlangıç: Azure PowerShell kullanarak özel kapsayıcı kayıt defteri oluşturma

Azure Container Registry, kapsayıcı görüntülerini ve ilgili yapıtları oluşturmaya, depolamaya ve yönetmeye yönelik özel bir kayıt defteri hizmetidir. Bu hızlı başlangıçta, Azure PowerShell ile bir Azure kapsayıcı kayıt defteri örneği oluşturacaksınız. Ardından Docker komutlarını kullanarak kayıt defterine bir kapsayıcı görüntüsü gönderin ve son olarak görüntüyü kayıt defterinizden çekip çalıştırın.

Önkoşullar

Not

Azure ile etkileşime geçmek için Azure Az PowerShell modülünü kullanmanızı öneririz. Başlamak için bkz. Azure PowerShell'i yükleme. Az PowerShell modülüne nasıl geçeceğinizi öğrenmek için bkz. Azure PowerShell’i AzureRM’den Az’ye geçirme.

Bu hızlı başlangıç için Azure PowerShell modül gerekir. Yüklü sürümünüzü belirlemek için Get-Module -ListAvailable Az komutunu çalıştırın. Yüklemeniz veya yükseltmeniz gerekirse, bkz. Azure PowerShell Modülü yükleme.

Ayrıca sisteminizde yerel olarak Docker yüklü olması gerekir. Docker, macOS, Windows ve Linux sistemleri için paketler sağlar.

Azure Cloud Shell gerekli tüm Docker bileşenlerini (dockerd daemon) içermediğinden, bu hızlı başlangıçta Cloud Shell’i kullanamazsınız.

Azure'da oturum açma

Connect-AzAccount komutuyla Azure aboneliğinizde oturum açın ve ekrandaki yönergeleri izleyin.

Connect-AzAccount

Kaynak grubu oluşturma

Azure kimlik doğrulaması yaptıktan sonra New-AzResourceGroup ile bir kaynak grubu oluşturun. Kaynak grubu, Azure kaynaklarınızın dağıtıldığı ve yönetildiği bir mantıksal kapsayıcıdır.

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Kapsayıcı kayıt defteri oluşturma

Ardından New-AzContainerRegistry komutuyla yeni kaynak grubunuzda bir kapsayıcı kayıt defteri oluşturun.

Kaynak defteri adı Azure’da benzersiz olmalı ve 5-50 arası alfasayısal karakter içermelidir. Aşağıdaki örnekte "mycontainerregistry" adlı bir kayıt defteri oluşturulur. Aşağıdaki komutta mycontainerregistry değerini değiştirin ve kayıt defterini oluşturmak için çalıştırın:

$registry = New-AzContainerRegistry -ResourceGroupName "myResourceGroup" -Name "mycontainerregistry" -EnableAdminUser -Sku Basic

İpucu

Bu hızlı başlangıçta, Azure Container Registry hakkında bilgi edinen geliştiriciler için maliyet açısından iyileştirilmiş bir seçenek olan Temel kayıt defteri oluşturacaksınız. Daha fazla depolama ve görüntü aktarım hızı için diğer katmanları ve özel uç nokta kullanarak bağlantı gibi özellikleri seçin. Kullanılabilir hizmet katmanları (SKU'lar) hakkında ayrıntılı bilgi için bkz. Kapsayıcı kayıt defteri hizmet katmanları.

Kayıt defterinde oturum açma

Kapsayıcı görüntülerini göndermeden ve çekmeden önce Connect-AzContainerRegistry cmdlet'iyle kayıt defterinizde oturum açmanız gerekir. Aşağıdaki örnek, cmdlet'iyle Connect-AzAccount Azure'da kimlik doğrulaması yaparken oturum açtığınız kimlik bilgilerini kullanır.

Not

Aşağıdaki örnekte değeri $registry.Name , tam kayıt defteri adı değil kaynak adıdır.

Connect-AzContainerRegistry -Name $registry.Name

Bu komut tamamlandığında Login Succeeded döndürülür.

Kayıt defterine görüntü gönderme

Azure Container kayıt defterine görüntü gönderebilmeniz için önce bir görüntünüz olmalıdır. Henüz yerel kapsayıcı görüntüleriniz yoksa, mevcut bir genel görüntüyü çekmek için aşağıdaki docker pull komutunu çalıştırın. Bu örnekte, görüntüyü Microsoft Container Registry'den çekin hello-world .

docker pull mcr.microsoft.com/hello-world

Bir görüntüyü kayıt defterinize gönderebilmeniz için önce kayıt defteri oturum açma sunucunuzun tam adıyla etiketlemeniz gerekir. Oturum açma sunucusu adı registry-name.azurecr.io> biçimindedir< (tümü küçük harfle yazılmalıdır), örneğin mycontainerregistry.azurecr.io.

Görüntüyü docker tag komutunu kullanarak etiketleyin. <login-server> değerini, ACR örneğinizin sunucu adıyla değiştirin.

docker tag mcr.microsoft.com/hello-world <login-server>/hello-world:v1

Örnek:

docker tag mcr.microsoft.com/hello-world mycontainerregistry.azurecr.io/hello-world:v1

Son olarak, görüntüyü kayıt defteri örneğine göndermek için docker push komutunu kullanın. değerini kayıt defteri örneğinizin oturum açma sunucusu adıyla değiştirin <login-server> . Bu örnek, görüntüyü içeren hello-world deposunu hello-world:v1 oluşturur.

docker push <login-server>/hello-world:v1

Görüntüyü kapsayıcı kayıt defterinize gönderdikten sonra görüntüyü yerel Docker ortamınızdan kaldırın hello-world:v1 . (Bu docker rmi komutunun görüntüyü Azure kapsayıcı kayıt defterinizdeki hello-world deposundan kaldırmadığını unutmayın.)

docker rmi <login-server>/hello-world:v1

Kayıt defterinden görüntü çalıştırma

Artık docker run komutunu kullanarak kapsayıcı görüntüsünü kapsayıcı kayıt defterinizden çekip çalıştırabilirsinizhello-world:v1:

docker run <login-server>/hello-world:v1  

Örnek çıktı:

Unable to find image 'mycontainerregistry.azurecr.io/hello-world:v1' locally
v1: Pulling from hello-world
Digest: sha256:662dd8e65ef7ccf13f417962c2f77567d3b132f12c95909de6c85ac3c326a345
Status: Downloaded newer image for mycontainerregistry.azurecr.io/hello-world:v1

Hello from Docker!
This message shows that your installation appears to be working correctly.

[...]

Kaynakları temizleme

Bu hızlı başlangıçta oluşturduğunuz kaynaklarla çalışmayı tamamladıktan sonra Remove-AzResourceGroup komutunu kullanarak kaynak grubunu, kapsayıcı kayıt defterini ve burada depolanan kapsayıcı görüntülerini kaldırın:

Remove-AzResourceGroup -Name myResourceGroup

Sonraki adımlar

Bu hızlı başlangıçta, Azure PowerShell ile bir Azure Container Registry oluşturdunuz, bir kapsayıcı görüntüsü göndermeniz ve görüntüyü kayıt defterinden çekip çalıştırmış olmanız gerekir. ACR'ye daha ayrıntılı bir bakış için Azure Container Registry öğreticilerine geçin.