Guida introduttiva: Distribuire un'istanza di contenitore in Azure con Azure PowerShellQuickstart: Deploy a container instance in Azure using Azure PowerShell

Il servizio Istanze di Azure Container consente di eseguire contenitori Docker serverless in Azure in modo semplice e rapido.Use Azure Container Instances to run serverless Docker containers in Azure with simplicity and speed. Distribuire un'applicazione in un'istanza di contenitore su richiesta quando non è necessaria una piattaforma di orchestrazione di contenitori completa come il servizio Azure Kubernetes.Deploy an application to a container instance on-demand when you don't need a full container orchestration platform like Azure Kubernetes Service.

In questo argomento di avvio rapido viene usato Azure PowerShell per distribuire un contenitore Windows isolato e renderne disponibile l'applicazione con un nome di dominio completo (FQDN).In this quickstart, you use Azure PowerShell to deploy an isolated Windows container and make its application available with a fully qualified domain name (FQDN). Pochi secondi dopo aver eseguito un singolo comando di distribuzione, è possibile passare all'applicazione in esecuzione nel contenitore:A few seconds after you execute a single deployment command, you can browse to the application running in the container:

App distribuita in Istanze di Azure Container visualizzata nel browser

Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.If you don't have an Azure subscription, create a free account before you begin.

Nota

Questo articolo è stato aggiornato per usare il nuovo modulo Az di Azure PowerShell.This article has been updated to use the new Azure PowerShell Az module. È comunque possibile usare il modulo AzureRM, che continuerà a ricevere correzioni di bug almeno fino a dicembre 2020.You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Per altre informazioni sul nuovo modulo Az e sulla compatibilità di AzureRM, vedere Introduzione del nuovo modulo Az di Azure PowerShell.To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Per istruzioni sull'installazione del modulo Az, vedere Installare Azure PowerShell.For Az module installation instructions, see Install Azure PowerShell.

Usare Azure Cloud ShellUse Azure Cloud Shell

Azure Cloud Shell è un ambiente di shell interattivo ospitato in Azure e usato tramite il browser.Azure hosts Azure Cloud Shell, an interactive shell environment that you can use through your browser. Cloud Shell consente di usare bash o PowerShell per interagire con i servizi di Azure.Cloud Shell lets you use either bash or PowerShell to work with Azure services. È possibile usare i comandi preinstallati di Cloud Shell per eseguire il codice contenuto in questo articolo senza dover installare strumenti nell'ambiente locale.You can use the Cloud Shell pre-installed commands to run the code in this article without having to install anything on your local environment.

Per avviare Azure Cloud Shell:To launch Azure Cloud Shell:

OpzioneOption Esempio/CollegamentoExample/Link
Selezionare Prova nell'angolo superiore destro di un blocco di codice.Select Try It in the upper-right corner of a code block. La selezione di Prova non comporta la copia automatica del codice in Cloud Shell.Selecting Try It doesn't automatically copy the code to Cloud Shell. Esempio di Prova per Azure Cloud Shell
Passare a https://shell.azure.com o selezionare il pulsante Avvia Cloud Shell per aprire Cloud Shell nel browser.Go to https://shell.azure.com or select the Launch Cloud Shell button to open Cloud Shell in your browser. Avviare Cloud Shell in una nuova finestraLaunch Cloud Shell in a new window
Selezionare il pulsante Cloud Shell nella barra dei menu nell'angolo superiore destro del portale di Azure.Select the Cloud Shell button on the top-right menu bar in the Azure portal. Pulsante Cloud Shell nel portale di Azure

Per eseguire il codice di questo articolo in Azure Cloud Shell:To run the code in this article in Azure Cloud Shell:

  1. Avviare Cloud Shell.Launch Cloud Shell.

  2. Selezionare il pulsante Copia in un blocco di codice per copiare il codice.Select the Copy button on a code block to copy the code.

  3. Incollare il codice nella sessione di Cloud Shell premendo CTRL+MAIUSC+V in Windows e Linux o CMD+MAIUSC+V in macOS.Paste the code into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS.

  4. Premere INVIO per eseguire il codice.Press Enter to run the code.

Se si sceglie di installare e usare PowerShell in locale, per questa esercitazione è necessario il modulo Azure PowerShell.If you choose to install and use the PowerShell locally, this tutorial requires the Azure PowerShell module. Eseguire Get-Module -ListAvailable Az per trovare la versione.Run Get-Module -ListAvailable Az to find the version. Se è necessario eseguire l'aggiornamento, vedere Installare e configurare Azure PowerShell.If you need to upgrade, see Install Azure PowerShell module. Se si esegue PowerShell in locale, è anche necessario eseguire Connect-AzAccount per creare una connessione con Azure.If you are running PowerShell locally, you also need to run Connect-AzAccount to create a connection with Azure.

Creare un gruppo di risorseCreate a resource group

Le Istanze di Azure Container, analogamente a tutte le risorse di Azure, devono essere distribuite in un gruppo di risorse.Azure container instances, like all Azure resources, must be deployed into a resource group. I gruppi di risorse consentono di organizzare e gestire le risorse di Azure correlate.Resource groups allow you to organize and manage related Azure resources.

Per iniziare, creare un gruppo di risorse denominato myResourceGroup nell'area eastus con il comando New-AzResourceGroup seguente:First, create a resource group named myResourceGroup in the eastus location with the following New-AzResourceGroup command:

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Creare un contenitoreCreate a container

Dopo aver creato il gruppo di risorse, è possibile eseguire un contenitore in Azure.Now that you have a resource group, you can run a container in Azure. Per creare un'istanza di contenitore con Azure PowerShell, specificare il nome del gruppo di risorse, il nome dell'istanza di contenitore e l'immagine del contenitore Docker nel cmdlet New-AzContainerGroup.To create a container instance with Azure PowerShell, provide a resource group name, container instance name, and Docker container image to the New-AzContainerGroup cmdlet. In questo argomento di avvio rapido viene usata l'immagine mcr.microsoft.com/windows/servercore/iis:nanoserver pubblica.In this quickstart, you use the public mcr.microsoft.com/windows/servercore/iis:nanoserver image. Questa immagine include Microsoft Internet Information Services (IIS) per l'esecuzione in Nano Server.This image packages Microsoft Internet Information Services (IIS) to run in Nano Server.

È possibile esporre i contenitori in Internet specificando una o più porte da aprire, un'etichetta del nome DNS o entrambi.You can expose your containers to the internet by specifying one or more ports to open, a DNS name label, or both. In questa guida introduttiva si distribuisce un contenitore con un'etichetta del nome DNS in modo che IIS sia raggiungibile pubblicamente.In this quickstart, you deploy a container with a DNS name label so that IIS is publicly reachable.

Per avviare un'istanza di contenitore, eseguire un comando simile al seguente.Execute a command similar to the following to start a container instance. Impostare un valore di -DnsNameLabel univoco all'interno dell'area di Azure in cui si crea l'istanza.Set a -DnsNameLabel value that's unique within the Azure region where you create the instance. Se si riceve il messaggio di errore "L'etichetta del nome DNS non è disponibile", provare con un'etichetta del nome DNS diversa.If you receive a "DNS name label not available" error message, try a different DNS name label.

New-AzContainerGroup -ResourceGroupName myResourceGroup -Name mycontainer -Image mcr.microsoft.com/windows/servercore/iis:nanoserver -OsType Windows -DnsNameLabel aci-demo-win

Entro pochi secondi si dovrebbe ricevere una risposta da Azure.Within a few seconds, you should receive a response from Azure. Inizialmente, il valore ProvisioningState del contenitore è Creazione in corso, ma dovrebbe passare a Operazione completata entro un minuto o due.The container's ProvisioningState is initially Creating, but should move to Succeeded within a minute or two. Controllare lo stato di distribuzione con il cmdlet Get-AzContainerGroup:Check the deployment state with the Get-AzContainerGroup cmdlet:

Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name mycontainer

Lo stato di provisioning, il nome di dominio completo (FQDN) e l'indirizzo IP del contenitore vengono visualizzati nell'output del cmdlet:The container's provisioning state, fully qualified domain name (FQDN), and IP address appear in the cmdlet's output:

PS Azure:\> Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name mycontainer


ResourceGroupName        : myResourceGroup
Id                       : /subscriptions/<Subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroups/mycontainer
Name                     : mycontainer
Type                     : Microsoft.ContainerInstance/containerGroups
Location                 : eastus
Tags                     :
ProvisioningState        : Creating
Containers               : {mycontainer}
ImageRegistryCredentials :
RestartPolicy            : Always
IpAddress                : 52.226.19.87
DnsNameLabel             : aci-demo-win
Fqdn                     : aci-demo-win.eastus.azurecontainer.io
Ports                    : {80}
OsType                   : Windows
Volumes                  :
State                    : Pending
Events                   : {}

Quando il valore ProvisioningState del contenitore è Operazione completata, passare al relativo indirizzo Fqdn nel browser.Once the container's ProvisioningState is Succeeded, navigate to its Fqdn in your browser. Se viene visualizzata una pagina Web simile all'immagine seguente, congratulazioni!If you see a web page similar to the following, congratulations! È stata completata la distribuzione di un'applicazione in esecuzione in un contenitore Docker in Azure.You've successfully deployed an application running in a Docker container to Azure.

IIS distribuito con Istanze di Azure Container visualizzato nel browser

Pulire le risorseClean up resources

Quando il contenitore non è più necessario, rimuoverlo con il cmdlet Remove-AzContainerGroup:When you're done with the container, remove it with the Remove-AzContainerGroup cmdlet:

Remove-AzContainerGroup -ResourceGroupName myResourceGroup -Name mycontainer

Passaggi successiviNext steps

In questa guida introduttiva è stata creata un'istanza di contenitore di Azure da un'immagine nel registro nell'hub Docker pubblico.In this quickstart, you created an Azure container instance from an image in the public Docker Hub registry. Per provare a creare un'immagine del contenitore e a distribuirla da un Registro Azure Container privato, passare all'esercitazione su Istanze di Azure Container.If you'd like to build a container image and deploy it from a private Azure container registry, continue to the Azure Container Instances tutorial.