Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Registro Azure Container è un servizio registro privato per la creazione, l'archiviazione e la gestione delle immagini di contenitori e degli artefatti correlati. In questa guida introduttiva si creerà un'istanza di Registro Azure Container usando Azure PowerShell in locale. Usando quindi l'interfaccia della riga di comando di Docker si eseguirà il pull di un'immagine del contenitore hello-world, si contrassegnerà l'immagine del contenitore hello-world per creare una nuova immagine del contenitore, si eseguirà il push della nuova immagine del contenitore nel registro contenitori, si eliminerà l'immagine del contenitore locale e infine si eseguirà il pull e l'esecuzione dell'immagine dal registro.
Prerequisiti
Nota
È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.
Per questa guida introduttiva è richiesto il modulo Azure PowerShell. Per determinare la versione installata eseguire Get-Module -ListAvailable Az. Se è necessario eseguire l'installazione o l'aggiornamento, vedere come installare il modulo Azure PowerShell.
È anche necessario avere Docker installato localmente. Docker offre pacchetti per i sistemi macOS, Windows e Linux.
Poiché Azure Cloud Shell non include tutti i componenti di Docker necessari, ovvero il daemon dockerd, non è possibile usare Cloud Shell lo per questa guida rapida.
Accedere ad Azure
Accedere alla propria sottoscrizione di Azure con il comando Connect-AzAccount e seguire le istruzioni visualizzate.
Connect-AzAccount
Crea gruppo di risorse
Dopo aver eseguito l'autenticazione con Azure, creare un gruppo di risorse con il comando New-AzResourceGroup. Un gruppo di risorse è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite.
New-AzResourceGroup -Name myResourceGroup -Location EastUS
Creare un registro contenitori
Successivamente creare un registro contenitori nel nuovo gruppo di risorse con il comando New-AzContainerRegistry.
Il nome del registro deve essere univoco in Azure e contenere da 5 a 50 caratteri alfanumerici. L'esempio seguente crea un registro denominato "mycontainerregistry" Sostituire mycontainerregistry nel comando seguente, quindi eseguirlo per creare il registro:
$registry = New-AzContainerRegistry -ResourceGroupName "myResourceGroup" -Name "mycontainerregistry" -EnableAdminUser -Sku Standard -Location EastUS
Suggerimento
In questa guida introduttiva si crea un registro Standard , che è sufficiente per la maggior parte dei flussi di lavoro di Registro Azure Container. Per aumentare la velocità effettiva di archiviazione e immagine e funzionalità, ad esempio la connessione tramite un endpoint privato, è disponibile l'opzione piano tariffario Premium (SKU). Per informazioni dettagliate sui livelli di servizio (SKU), vedere Funzionalità e limiti dello SKU di Registro Azure Container.
Accedere al registro
Prima di eseguire il push e il pull delle immagini del contenitore, è necessario accedere al registro con il cmdlet Connect-AzContainerRegistry. L'esempio seguente usa le stesse credenziali con cui è stato eseguito l'accesso quando si esegue l'autenticazione in Azure con il cmdlet Connect-AzAccount.
Nota
Nell'esempio seguente il valore di $registry.Name è il nome della risorsa, non il nome completo del Registro di sistema.
Connect-AzContainerRegistry -Name $registry.Name
Il comando restituisce Login Succeeded al termine dell'esecuzione.
Eseguire il push dell'immagine nel registro
Per eseguire il push di un'immagine in un'istanza di Registro Azure Container, è prima di tutto necessario che sia disponibile un'immagine. Se non si dispone ancora di immagini del contenitore locali, eseguire il comando docker pull seguente per eseguire il pull di un'immagine pubblica esistente. Per questo esempio, eseguire il pull dell'immagine hello-world da Registro Container Microsoft.
docker pull mcr.microsoft.com/hello-world
Prima di poter eseguire il push di un'immagine nel registro, è necessario contrassegnarla usando il tag Docker con il nome completo del server di accesso del Registro di sistema.
- Il formato del nome del server di accesso per i registri protetti DNL (Domain Name Label) con un hash del nome DNS univoco incluso è
mycontainerregistry-abc123.azurecr.io. - Il formato del nome del server di accesso per i registri creati con l'opzione
UnsecureDNL èmycontainerregistry.azurecr.io.
Ad esempio, se si crea un registro con ambito Tenant Reuse DNL, il server di accesso potrebbe apparire simile a mycontainerregistry-abc123.azurecr.io con un hash nel nome DNS. Se si crea un registro con l'opzione Unsecure DNL, il server di accesso sembra simile a mycontainerregistry.azurecr.io, senza l'hash.
Contrassegna l'immagine usando il comando docker tag con il server di accesso del registro. Per questa guida introduttiva, contrassegna l'immagine hello-world con v1.
Comando di esempio per contrassegnare un'immagine per un registro protetto da DNL:
docker tag mcr.microsoft.com/hello-world mycontainerregistry-abc123.azurecr.io/hello-world:v1
Comando di esempio per contrassegnare un'immagine per un registro non DNL:
docker tag mcr.microsoft.com/hello-world mycontainerregistry.azurecr.io/hello-world:v1
Usare infine docker push per eseguire il push dell'immagine nell'istanza del registro. Sostituire <login-server> con il nome del server di accesso dell'istanza del registro. Questo esempio crea il repository hello-world che contiene l'immagine hello-world:v1.
docker push <login-server>/hello-world:v1
Dopo aver eseguito il push dell'immagine nel registro contenitori, rimuovere l'immagine hello-world:v1 dall'ambiente Docker locale usando il comando docker rmi . Questo comando non rimuove l'immagine dal repository hello-world nel registro Azure Container.
docker rmi <login-server>/hello-world:v1
Eseguire un'immagine dal registro
È possibile ora effettuare il pull ed eseguire l'immagine del contenitore hello-world:v1 dal registro contenitori usando docker run:
docker run <login-server>/hello-world:v1
Output di esempio:
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.
[...]
Pulire le risorse
Dopo avere usato le risorse create in questa guida di avvio rapido, usare il comando Remove-AzResourceGroup per rimuovere il gruppo di risorse, il registro contenitori e le immagini del contenitore archiviate in tale registro:
Remove-AzResourceGroup -Name myResourceGroup
Passaggi successivi
In questa guida introduttiva è stata creata un'istanza di Registro Azure Container usando Azure PowerShell in locale, è stata estratta un'immagine del contenitore hello-world, è stata contrassegnata l'immagine hello-world per creare una nuova immagine del contenitore, è stato eseguito il push della nuova immagine del contenitore nel registro contenitori, è stata eliminata l'immagine del contenitore locale ed è stata infine estratta ed eseguita l'immagine dal registro. Per maggiori informazioni su Registro Azure Container, passare alle relative esercitazioni.