Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Använd Azure Container Instances till att snabbt och enkelt köra serverlösa Docker-containrar i Azure. Distribuera ett program i en containerinstans på begäran när du inte behöver en komplett plattform för containerorkestrering som Azure Kubernetes Service.
I den här snabbstarten använder du Azure PowerShell för att distribuera en isolerad Windows-container och göra programmet tillgängligt med ett fullständigt kvalificerat domännamn (FQDN) och en port. Några sekunder efter att du har kört ett enda distributionskommando kan du bläddra till programmet som körs i containern:
               
              
            
Om du inte har någon Azure-prenumeration kan du skapa ett kostnadsfritt konto innan du börjar.
Anmärkning
Vi rekommenderar att du använder Azure Az PowerShell-modulen för att interagera med Azure. Se Installera Azure PowerShell för att komma igång. Information om hur du migrerar till Az PowerShell-modulen finns i Migrera Azure PowerShell från AzureRM till Az.
Azure Cloud Shell
Azure är värd för Azure Cloud Shell, en interaktiv gränssnittsmiljö som du kan använda via webbläsaren. Du kan använda antingen Bash eller PowerShell med Cloud Shell för att arbeta med Azure-tjänster. Du kan använda förinstallerade Cloud Shell-kommandon för att köra koden i den här artikeln, utan att behöva installera något i din lokala miljö.
Så här startar du Azure Cloud Shell:
| Alternativ | Exempel/länk | 
|---|---|
| Välj Prova i det övre högra hörnet av ett kod- eller kommandoblock. Om du väljer Prova kopieras inte koden eller kommandot automatiskt till Cloud Shell. |   | 
| Gå till https://shell.azure.com eller Välj knappen Starta Cloud Shell för att öppna Cloud Shell i webbläsaren. |   | 
| Välj knappen Cloud Shell på menyn längst upp till höger i Azure-portalen. |   | 
Så här använder du Azure Cloud Shell:
- Starta Cloud Shell. 
- Välj knappen Kopiera i ett kodblock (eller kommandoblock) för att kopiera koden eller kommandot. 
- Klistra in koden eller kommandot i Cloud Shell-sessionen genom att välja Ctrl+Skift+V i Windows och Linux, eller genom att välja Cmd+Skift+V på macOS. 
- Välj Ange för att köra koden eller kommandot. 
Om du väljer att installera och använda PowerShell lokalt behöver du ha Azure PowerShell-modulen för den här självstudien. Kör Get-Module -ListAvailable Az för att hitta versionen. Om du behöver uppgradera kan du läsa Install Azure PowerShell module (Installera Azure PowerShell-modul). Om du kör PowerShell lokalt måste du också köra Connect-AzAccount för att skapa en anslutning till Azure.
Skapa en resursgrupp
Azure-containerinstanser (liksom alla Azure-resurser) måste distribueras till en resursgrupp. Resursgrupper gör det enkelt att se och hantera relaterade Azure-resurser.
Skapa först en resursgrupp med namnet myResourceGroup i området eastus med följande kommando New-AzResourceGroup:
New-AzResourceGroup -Name myResourceGroup -Location EastUS
Skapa en port för containerinstansen
Du kan exponera dina containrar till internet genom att ange en eller flera portar som ska öppnas, en DNS-namnetikett eller båda. I den här snabbstarten distribuerar du en container med en DNS-namnetikett så att den kan nås offentligt. I den här guiden gör vi båda, men först måste du skapa ett portobjekt i PowerShell för att containerinstansen ska kunna använda.
$port = New-AzContainerInstancePortObject -Port 80 -Protocol TCP
Skapa en behållargrupp
Nu när du har en resursgrupp och port kan du köra en container som är exponerad för Internet i Azure. Om du vill skapa en containerinstans med Azure PowerShell måste du först skapa en ContainerInstanceObject genom att ange ett namn, en avbildning och en port för containern. I den här snabbstarten använder du den offentliga mcr.microsoft.com/azuredocs/aci-helloworld avbildningen.
$containerInstance = New-AzContainerInstanceObject -Name myContainer -Image mcr.microsoft.com/azuredocs/aci-helloworld -Port @($port)
Använd sedan cmdleten New-AzContainerGroup . Du måste ange ett namn för containergruppen, resursgruppens namn, en plats för containergruppen, containerinstansen som du skapade, operativsystemtypen och en unik DNS-namnetikett för IP-adress.
Kör ett kommando som liknar följande för att starta en containerinstans. Ange ett -IPAddressDnsNameLabel värde som är unikt i Azure-regionen där du skapar instansen. Om du får felmeddelandet ”DNS-namnetiketten är inte tillgänglig” provar du med en annan DNS-namnetikett.
$containerGroup = New-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup -Location EastUS -Container $containerInstance -OsType Windows -IPAddressDnsNameLabel aci-quickstart-win -IpAddressType Public -IPAddressPorts @($port)
Om du vill göra containergruppen zonindelad använder du -Zone argumentet och anger det logiska zonnumret:
$containerGroup = New-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup -Location EastUS -Container myContainer -OsType Windows -IPAddressDnsNameLabel aci-quickstart-win -IpAddressType Public -IPAddressPorts @($port) -Zone 1
Viktigt!
Zonindeliga containergrupper är endast tillgängliga i regioner som stöder tillgänglighetszoner. Om du vill se om din region har stöd för tillgänglighetszoner kan du läsa Listan över Azure-regioner.
Inom några sekunder bör du få ett första svar från Azure. Containerns ProvisioningState är initialt Skapa, men bör flyttas till Lyckades inom en minut eller två. Kontrollera distributionsstatusen med hjälp av cmdleten Get-AzContainerGroup:
Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup
Du kan också skriva ut $containerGroup-objektet och filtrera tabellen efter containerns etableringstillstånd, fullständigt kvalificerade domännamn (FQDN) och IP-adress.
$containerGroup | Format-Table InstanceViewState, IPAddressFqdn, IPAddressIP
Containerns etableringstillstånd, FQDN och IP-adress visas i cmdletens utdata:
PS Azure:\> Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup
ResourceGroupName        : myResourceGroup
Id                       : /subscriptions/<Subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroups/myContainerGroup
Name                     : myContainerGroup
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                   : {}
Om containerns ProvisioningState är slutförd, går du till dess FQDN i webbläsaren. Om du ser en webbsida som liknar följande – grattis! Du har distribuerat ett program som körs i en Docker-container till Azure.
               
              
            
Rensa resurser
När du är klar med containern kan du ta bort den med cmdleten Remove-AzContainerGroup:
Remove-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup
Nästa steg
I den här snabbstarten har du skapat en Azure-containerinstans utifrån en avbildning som finns i det offentliga Docker Hub-registret. Om du vill bygga en containeravbildning och distribuera den från ett privat Azure-containerregister, går du vidare till handledningen för Azure Container Instances.