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şim kurmak 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ştur
Azure'da 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 uygun maliyetli 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 çıkış:
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önderin ve görüntüyü kayıt defterinden çekip çalıştırın. ACR'ye daha ayrıntılı bir bakış için Azure Container Registry öğreticilerine geçin.