Samouczek: wdrażanie aplikacji kontenera w usłudze Azure Container Instances
To jest ostatni samouczek z serii składającej się z trzech części. Wcześniej w tej serii utworzono obraz kontenera i przekazano go do usługi Azure Container Registry. Ten artykuł stanowi zakończenie serii i dotyczy wdrażania kontenera w usłudze Azure Container Instances.
W tym samouczku zostały wykonane następujące czynności:
- Wdrażanie kontenera z usługi Azure Container Registry do usługi Azure Container Instances
- Wyświetlanie uruchomionej aplikacji w przeglądarce
- Wyświetlanie dzienników kontenera
Zanim rozpoczniesz
Aby ukończyć ten samouczek, musisz spełniać następujące wymagania:
Interfejs wiersza polecenia platformy Azure: musisz mieć interfejs wiersza polecenia platformy Azure w wersji 2.0.29 lub nowszej zainstalowany na komputerze lokalnym. Aby dowiedzieć się, jaka wersja jest używana, uruchom polecenie az --version
. Jeśli konieczna będzie instalacja lub uaktualnienie interfejsu, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
Docker: ten samouczek zakłada, że masz podstawową wiedzę na temat najważniejszych pojęć usługi Docker, takich jak kontenery, obrazy kontenera i podstawowe polecenia docker
. Aby uzyskać podstawowe informacje na temat platformy Docker i kontenerów, zapoznaj się z artykułem Docker overview (Przegląd platformy Docker).
Docker: aby ukończyć ten samouczek, musisz zainstalować platformę Docker lokalnie. Platforma Docker udostępnia pakiety, które konfigurują środowisko platformy Docker w systemach macOS, Windows i Linux.
Ważne
Ponieważ usługa Azure Cloud Shell nie zawiera demona platformy Docker, w celu ukończenia tego samouczka musisz zainstalować na swoim komputerze lokalnym wiersz polecenia platformy Azure i aparat platformy Docker. W tym samouczku nie możesz korzystać z usługi Azure Cloud Shell.
Wdrażanie kontenera przy użyciu interfejsu wiersza polecenia platformy Azure
W tej sekcji używa się interfejsu wiersza polecenia platformy Azure do wdrożenia obrazu utworzonego w pierwszym samouczku oraz wypchniętego do usługi Azure Container Registry w drugim samouczku. Przed kontynuowaniem upewnij się, że wykonasz te samouczki.
Pobieranie poświadczeń rejestru
Podczas wdrażania obrazu hostowanego w prywatnym rejestrze kontenerów platformy Azure, takiego jak ten utworzony w drugim samouczku, należy podać poświadczenia, aby uzyskać dostęp do rejestru.
Najlepszym rozwiązaniem dla wielu scenariuszy jest utworzenie i skonfigurowanie jednostki usługi Microsoft Entra z uprawnieniami ściągnięcia do rejestru. Zobacz Uwierzytelnianie za pomocą usługi Azure Container Registry z usługi Azure Container Instances , aby uzyskać przykładowe skrypty, aby utworzyć jednostkę usługi z niezbędnymi uprawnieniami. Zanotuj identyfikator jednostki usługi i hasło jednostki usługi. Te poświadczenia służą do uzyskiwania dostępu do rejestru podczas wdrażania kontenera.
Potrzebna jest również pełna nazwa serwera logowania rejestru kontenerów (zastąp <acrName>
ciąg nazwą rejestru):
az acr show --name <acrName> --query loginServer
Wdrażanie kontenera
Teraz użyj polecenia az container create, aby wdrożyć kontener. Zastąp element <acrLoginServer>
wartością uzyskaną przy użyciu poprzedniego polecenia. Zastąp elementy <service-principal-ID>
i <service-principal-password>
identyfikatorem jednostki usługi i hasłem jednostki usługi, które umożliwiają dostęp do rejestru. Zastąp element <aciDnsLabel>
odpowiednią nazwą DNS.
az container create --resource-group myResourceGroup --name aci-tutorial-app --image <acrLoginServer>/aci-tutorial-app:v1 --cpu 1 --memory 1 --registry-login-server <acrLoginServer> --registry-username <service-principal-ID> --registry-password <service-principal-password> --ip-address Public --dns-name-label <aciDnsLabel> --ports 80
W ciągu kilku sekund powinna pojawić się początkowa odpowiedź z platformy Azure. Wartość --dns-name-label
musi być unikatowa w regionie platformy Azure, w którym tworzysz wystąpienia kontenera. Zmodyfikuj wartość w poprzednim poleceniu, jeśli podczas wykonywania polecenia zostanie wyświetlony komunikat o błędzie etykiety nazwy DNS.
Sprawdzanie postępu wdrażania
Aby wyświetlić stan wdrożenia, użyj polecenia az container show:
az container show --resource-group myResourceGroup --name aci-tutorial-app --query instanceView.state
Powtarzaj polecenie az container show, aż stan zmieni się z Oczekujące na Uruchomiono. Powinno to potrwać krócej niż minutę. Jeśli kontener ma stan Uruchomiono, przejdź do następnego kroku.
Wyświetlanie dzienników aplikacji i kontenerów
Po pomyślnym wdrożeniu wyświetl w pełni kwalifikowaną nazwę domeny (FQDN) kontenera przy użyciu polecenia az container show:
az container show --resource-group myResourceGroup --name aci-tutorial-app --query ipAddress.fqdn
Na przykład:
"aci-demo.eastus.azurecontainer.io"
Aby wyświetlić działającą aplikację, przejdź do wyświetlonej nazwy DNS w ulubionej przeglądarce:
Możesz również wyświetlić dane wyjściowe dziennika kontenera:
az container logs --resource-group myResourceGroup --name aci-tutorial-app
Przykładowe wyjście:
listening on port 80
::ffff:10.240.0.4 - - [21/Jul/2017:06:00:02 +0000] "GET / HTTP/1.1" 200 1663 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36"
::ffff:10.240.0.4 - - [21/Jul/2017:06:00:02 +0000] "GET /favicon.ico HTTP/1.1" 404 150 "http://aci-demo.eastus.azurecontainer.io/" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36"
Czyszczenie zasobów
Jeśli nie potrzebujesz już zasobów utworzonych w tej serii samouczków, możesz wykonać polecenie az group delete, aby usunąć grupę zasobów i wszystkie należące do niej zasoby. To polecenie usuwa utworzony rejestr kontenerów, uruchomiony kontener i wszystkie powiązane zasoby.
az group delete --name myResourceGroup
Następne kroki
W tym samouczku ukończono proces wdrażania kontenera w usłudze Azure Container Instances. Wykonano następujące czynności:
- Wdrożono kontener z usługi Azure Container Registry przy użyciu interfejsu wiersza polecenia platformy Azure
- Wyświetlono aplikację w przeglądarce
- Wyświetlono dzienniki kontenera
Teraz, gdy znasz już podstawy, przejdź do informacji na temat usługi Azure Container Instances, np. dotyczących działania grup kontenerów: