Freigeben über


Schnellstart: Bereitstellen einer Containerinstanz in Azure mithilfe von Azure PowerShell

Verwenden Sie Azure-Containerinstanzen, um serverlose Docker-Container in Azure mit Einfachheit und Geschwindigkeit auszuführen. Stellen Sie eine Anwendung bei Bedarf in einer Containerinstanz bereit, wenn Sie keine vollständige Container-Orchestrierungsplattform wie Azure Kubernetes Service benötigen.

In dieser Schnellstartanleitung verwenden Sie Azure PowerShell, um einen isolierten Windows-Container bereitzustellen und seine Anwendung mit einem vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN) und Port verfügbar zu machen. Nach dem Ausführen eines einzelnen Bereitstellungsbefehls können Sie zu der Anwendung navigieren, die im Container ausgeführt wird:

Screenshot der app, die in Azure-Containerinstanzen bereitgestellt wird, die im Browser angezeigt werden.

Wenn Sie noch kein Azure-Abonnement haben, erstellen Sie ein kostenloses Konto, bevor Sie beginnen.

Hinweis

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Installieren von Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Azure Cloud Shell

Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.

Starten von Azure Cloud Shell:

Option Beispiel/Link
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. Screenshot: Beispiel von „Ausprobieren“ für Azure Cloud Shell
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. Schaltfläche zum Starten von Azure Cloud Shell.
Wählen Sie im Azure-Portal rechts oben auf der Menüleiste die Schaltfläche Cloud Shell aus. Screenshot: Schaltfläche „Cloud Shell“ im Azure-Portal

So verwenden Sie Azure Cloud Shell

  1. Starten Sie Cloud Shell.

  2. Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.

  3. Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.

  4. Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.

Wenn Sie die PowerShell lokal installieren und verwenden möchten, erfordert dieses Lernprogramm das Azure PowerShell-Modul. Führen Sie Get-Module -ListAvailable Az aus, um die Version zu ermitteln. Wenn Sie ein Upgrade ausführen müssen, finden Sie unter Installieren des Azure PowerShell-Moduls Informationen dazu. Wenn Sie PowerShell lokal ausführen, müssen Sie auch ausführen Connect-AzAccount , um eine Verbindung mit Azure zu erstellen.

Erstellen einer Ressourcengruppe

Azure-Containerinstanzen, wie alle Azure-Ressourcen, müssen in einer Ressourcengruppe bereitgestellt werden. Mit Ressourcengruppen können Sie verwandte Azure-Ressourcen organisieren und verwalten.

Erstellen Sie zunächst eine Ressourcengruppe namens "myResourceGroup " am Eastus-Speicherort mit dem folgenden Befehl "New-AzResourceGroup ":

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Erstellen eines Ports für Ihre Containerinstanz

Sie können Ihre Container im Internet verfügbar machen, indem Sie einen oder mehrere Ports angeben, die geöffnet werden sollen, eine DNS-Namensbezeichnung oder beides. In dieser Schnellstartanleitung stellen Sie einen Container mit einer DNS-Namensbezeichnung bereit, damit er öffentlich erreichbar ist. In diesem Handbuch tun wir beides, aber zuerst müssen Sie ein Portobjekt in PowerShell erstellen, damit Ihre Containerinstanz verwendet werden kann.

$port = New-AzContainerInstancePortObject -Port 80 -Protocol TCP

Erstellen einer Containergruppe

Nachdem Sie nun über eine Ressourcengruppe und einen Port verfügen, können Sie einen Container ausführen, der im Internet in Azure verfügbar gemacht wird. Um eine Containerinstanz mit Azure PowerShell zu erstellen, müssen Sie zunächst einen ContainerInstanceObject Namen, ein Image und einen Port für den Container angeben. In dieser Schnellstartanleitung verwenden Sie das öffentliche mcr.microsoft.com/azuredocs/aci-helloworld Bild.

$containerInstance = New-AzContainerInstanceObject -Name myContainer -Image mcr.microsoft.com/azuredocs/aci-helloworld -Port @($port)

Verwenden Sie als Nächstes das Cmdlet New-AzContainerGroup . Sie müssen einen Namen für die Containergruppe, den Namen Ihrer Ressourcengruppe, einen Speicherort für die Containergruppe, die von Ihnen erstellte Containerinstanz, den Betriebssystemtyp und eine eindeutige DNS-Adressnamenbezeichnung angeben.

Führen Sie einen Befehl ähnlich dem folgenden aus, um eine Containerinstanz zu starten. Legen Sie einen -IPAddressDnsNameLabel Wert fest, der innerhalb der Azure-Region eindeutig ist, in der Sie die Instanz erstellen. Wenn die Fehlermeldung "DNS-Namensbezeichnung nicht verfügbar" angezeigt wird, versuchen Sie es mit einer anderen DNS-Namensbezeichnung.

$containerGroup = New-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup -Location EastUS -Container $containerInstance -OsType Windows -IPAddressDnsNameLabel aci-quickstart-win -IpAddressType Public -IPAddressPorts @($port)

Verwenden Sie das Argument, und geben Sie die logische Zonennummer an, um die -Zone:

$containerGroup = New-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup -Location EastUS -Container myContainer -OsType Windows -IPAddressDnsNameLabel aci-quickstart-win -IpAddressType Public -IPAddressPorts @($port) -Zone 1

Von Bedeutung

Zonencontainergruppen sind nur in Regionen verfügbar, die Verfügbarkeitszonen unterstützen. Informationen dazu, ob Ihre Region Verfügbarkeitszonen unterstützt, finden Sie unter Azure Regions List.

Innerhalb weniger Sekunden sollten Sie eine Antwort von Azure erhalten. Als ProvisioningState des Containers wird anfänglich Erstellung angezeigt, aber dies sollte sich nach ein oder zwei Minuten in Erfolgreich ändern. Überprüfen Sie den Bereitstellungsstatus mit dem Cmdlet "Get-AzContainerGroup ":

Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Sie können auch das $containerGroup-Objekt drucken und die Tabelle nach dem Bereitstellungsstatus des Containers, vollqualifizierten Domänennamen (Fully Qualified Domain Name, FQDN) und DER IP-Adresse filtern.

$containerGroup | Format-Table InstanceViewState, IPAddressFqdn, IPAddressIP

Der Bereitstellungsstatus, der FQDN und die IP-Adresse des Containers werden in der Ausgabe des Cmdlets angezeigt:

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                   : {}

Wenn der Wert ProvisioningState des Containers Erfolgreich lautet, navigieren Sie in Ihrem Browser zu seinem FQDN. Wenn eine Webseite ähnlich der folgenden angezeigt wird, herzlichen Glückwunsch! Sie haben eine Anwendung erfolgreich bereitgestellt, die in einem Docker-Container in Azure ausgeführt wird.

Screenshot der Ansicht einer App, die in Azure-Containerinstanzen im Browser bereitgestellt wird.

Bereinigen von Ressourcen

Wenn Sie mit dem Container fertig sind, entfernen Sie ihn mit dem Cmdlet Remove-AzContainerGroup :

Remove-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Nächste Schritte

In dieser Schnellstartanleitung haben Sie eine Azure-Containerinstanz aus einem Image in der öffentlichen Docker Hub-Registrierung erstellt. Wenn Sie ein Containerimage erstellen und aus einer privaten Azure-Containerregistrierung bereitstellen möchten, fahren Sie mit dem Lernprogramm für Azure-Containerinstanzen fort.