Szybki start: wdrażanie wystąpienia kontenera na platformie Azure przy użyciu programu Azure PowerShell

Użyj usługi Azure Container Instances, aby łatwo i szybko uruchamiać bezserwerowe kontenery Docker na platformie Azure. Wdróż na żądanie aplikację w wystąpieniu kontenera, gdy nie potrzebujesz pełnej platformy orkiestracji kontenerów, takiej jak usługa Azure Kubernetes Service.

W tym przewodniku Szybki start wdrożysz izolowany kontener systemu Windows przy użyciu programu Azure PowerShell i udostępnisz aplikację przy użyciu w pełni kwalifikowanej nazwy domeny (FQDN) i portu. Kilka sekund po wykonaniu pojedynczego polecenia wdrożenia możesz przejść do aplikacji uruchomionej w kontenerze:

! [Aplikacja wdrożona w usłudze Azure Container Instances wyświetlona w przeglądarce] [./media/container-instances-quickstart/view-an-application-running-in-an-azure-container-instance.png]

Jeśli nie masz subskrypcji platformy Azure, przed rozpoczęciem utwórz bezpłatne konto.

Uwaga

Do interakcji z platformą Azure zalecamy używanie modułu Azure Az w programie PowerShell. Zobacz Instalowanie programu Azure PowerShell, aby rozpocząć. Aby dowiedzieć się, jak przeprowadzić migrację do modułu Az PowerShell, zobacz Migracja programu Azure PowerShell z modułu AzureRM do modułu Az.

Azure Cloud Shell

Na platforma Azure hostowane jest Azure Cloud Shell, interaktywne środowisko powłoki, z którego można korzystać w przeglądarce. Do pracy z usługami platformy Azure można używać programu Bash lub PowerShell w środowisku Cloud Shell. Aby uruchomić kod w tym artykule, możesz użyć wstępnie zainstalowanych poleceń usługi Cloud Shell bez konieczności instalowania niczego w środowisku lokalnym.

Aby uruchomić środowisko Azure Cloud Shell:

Opcja Przykład/link
Wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu lub polecenia. Wybranie pozycji Wypróbuj nie powoduje automatycznego skopiowania kodu lub polecenia do usługi Cloud Shell. Zrzut ekranu przedstawiający przykład narzędzia Try It dla usługi Azure Cloud Shell.
Przejdź do witryny https://shell.azure.com lub wybierz przycisk Uruchom Cloud Shell, aby otworzyć środowisko Cloud Shell w przeglądarce. Przycisk uruchamiania usługi Azure Cloud Shell.
Wybierz przycisk Cloud Shell na pasku menu w prawym górnym rogu witryny Azure Portal. Zrzut ekranu przedstawiający przycisk usługi Cloud Shell w witrynie Azure Portal

Aby użyć usługi Azure Cloud Shell:

  1. Uruchom usługę Cloud Shell.

  2. Wybierz przycisk Kopiuj w bloku kodu (lub bloku poleceń), aby skopiować kod lub polecenie.

  3. Wklej kod lub polecenie do sesji usługi Cloud Shell, wybierając klawisze Ctrl+Shift V w systemach Windows i Linux lub wybierając pozycję Cmd+Shift++V w systemie macOS.

  4. Wybierz klawisz Enter, aby uruchomić kod lub polecenie.

Jeśli postanowisz zainstalować program PowerShell i używać go lokalnie, ten samouczek będzie wymagał modułu programu Azure PowerShell. Uruchom polecenie Get-Module -ListAvailable Az, aby dowiedzieć się, jaka wersja jest używana. Jeśli konieczne będzie uaktualnienie, zobacz Instalowanie modułu Azure PowerShell. Jeśli używasz programu PowerShell lokalnie, musisz też uruchomić polecenie Connect-AzAccount, aby utworzyć połączenie z platformą Azure.

Tworzenie grupy zasobów

Wystąpienia kontenerów platformy Azure, tak jak wszystkie zasoby platformy Azure, muszą zostać wdrożone w grupie zasobów. Grupy zasobów umożliwiają organizowanie powiązanych zasobów platformy Azure i zarządzanie nimi.

Najpierw utwórz grupę zasobów o nazwie myResourceGroup w lokalizacji eastus za pomocą następującego polecenia New-AzResourceGroup:

New-AzResourceGroup -Name myResourceGroup -Location EastUS

Tworzenie portu dla wystąpienia kontenera

Możesz uwidocznić swoje kontenery w Internecie, określając co najmniej jeden port do otworzenia, etykietę nazwy DNS lub obie te informacje. W tym przewodniku Szybki start wdrożysz kontener z etykietą nazwy DNS, aby był publicznie dostępny. W tym przewodniku wykonamy obie czynności, ale najpierw należy utworzyć obiekt portu w programie PowerShell, który będzie używany przez wystąpienie kontenera.

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

Tworzenie grupy kontenerów

Teraz, gdy masz grupę zasobów i port, możesz uruchomić kontener uwidoczniony w Internecie na platformie Azure. Aby utworzyć wystąpienie kontenera za pomocą programu Azure PowerShell, najpierw musisz utworzyć ContainerInstanceObject element, podając nazwę, obraz i port dla kontenera. W tym przewodniku Szybki start użyjesz obrazu publicznego mcr.microsoft.com/azuredocs/aci-helloworld .

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

Następnie użyj polecenia cmdlet New-AzContainerGroup . Musisz podać nazwę grupy kontenerów, nazwę grupy zasobów, lokalizację dla grupy kontenerów, utworzone wystąpienie kontenera, typ systemu operacyjnego i unikatową etykietę nazwy DNS adresu IP.

Wykonaj polecenie podobne do poniższego, aby uruchomić wystąpienie kontenera. Ustaw wartość unikatową -IPAddressDnsNameLabel w regionie świadczenia usługi Azure, w którym tworzysz wystąpienie. Jeśli zostanie wyświetlony komunikat o błędzie „Etykieta nazwy DNS nie jest dostępna”, spróbuj użyć innej etykiety nazwy DNS.

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

W ciągu kilku sekund powinna pojawić się odpowiedź z platformy Azure. Stan ProvisioningState kontenera początkowo będzie mieć wartość Tworzenie, ale w ciągu minuty lub dwóch ta wartość powinna zmienić się na Powodzenie. Sprawdź stan wdrożenia za pomocą polecenia cmdlet Get-AzContainerGroup:

Get-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Możesz również wyświetlić obiekt $containerGroup i filtrować tabelę dla stanu aprowizacji kontenera, w pełni kwalifikowanej nazwy domeny (FQDN) i adresu IP.

$containerGroup | Format-Table InstanceViewState, IPAddressFqdn, IPAddressIP

Stan aprowizacji kontenera, nazwa FQDN i adres IP są wyświetlane w danych wyjściowych polecenia cmdlet:

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

Jeśli kontener ProvisioningState ma wartość Powodzenie, przejdź do nazwy FQDN w przeglądarce. Jeśli zostanie wyświetlona strona internetowa podobna do poniższej — gratulacje! Aplikacja działającą w kontenerze Docker została pomyślne wdrożona na platformie Azure.

! [Wyświetlanie aplikacji wdrożonej w usłudze Azure Container Instances w przeglądarce] [./media/container-instances-quickstart/view-an-application-running-in-an-azure-container-instance.png]

Czyszczenie zasobów

Po zakończeniu pracy z kontenerem usuń go przy użyciu polecenia cmdlet Remove-AzContainerGroup:

Remove-AzContainerGroup -ResourceGroupName myResourceGroup -Name myContainerGroup

Następne kroki

Podczas pracy z tym przewodnikiem Szybki start utworzono wystąpienie kontenera platformy Azure na podstawie obrazu z publicznego rejestru Docker Hub. Jeśli chcesz skompilować obraz kontenera i wdrożyć go za pomocą prywatnej usługi Azure Container Registry, przejdź do samouczka dotyczącego usługi Azure Container Instances.