Udostępnij za pośrednictwem


Szybki start: wdrażanie wystąpienia kontenera na platformie Azure przy użyciu interfejsu wiersza polecenia platformy Docker

Użyj usługi Azure Container Instances, aby łatwo i szybko uruchamiać bezserwerowe kontenery Docker na platformie Azure. Wdróż w wystąpieniu kontenera na żądanie podczas tworzenia aplikacji natywnych dla chmury i chcesz bezproblemowo przełączać się z lokalnego programowania do wdrożenia w chmurze.

W tym przewodniku Szybki start użyjesz natywnych poleceń interfejsu wiersza polecenia platformy Docker do wdrożenia kontenera platformy Docker i udostępnienia jej aplikacji w usłudze Azure Container Instances. Ta funkcja jest włączona przez integrację między platformą Docker i platformą Azure. Kilka sekund po wykonaniu docker run polecenia możesz przejść do aplikacji uruchomionej w kontenerze:

Widziana w przeglądarce aplikacja wdrożona za pomocą usługi Azure Container Instances

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

W tym przewodniku Szybki start potrzebujesz programu Docker Desktop w wersji 2.3.0.5 lub nowszej dostępnej dla systemu Windows lub macOS. Możesz też zainstalować interfejs wiersza polecenia integracji platformy Docker ACI dla systemu Linux.

Ważne

Nie wszystkie funkcje usługi Azure Container Instances są obsługiwane. Prześlij opinię na temat integracji platformy Docker-Azure, tworząc problem w repozytorium aci-integration-beta GitHub.

Tworzenie kontekstu platformy Azure

Aby użyć poleceń platformy Docker do uruchamiania kontenerów w usłudze Azure Container Instances, najpierw zaloguj się do platformy Azure:

docker login azure --tenant-id "[tenant ID]"

Przejdź do właściwości identyfikatora entra firmy Microsoft, aby znaleźć identyfikator dzierżawy.

Po wyświetleniu monitu wprowadź lub wybierz poświadczenia platformy Azure.

Utwórz kontekst ACI, uruchamiając polecenie docker context create aci. Ten kontekst kojarzy platformę Docker z subskrypcją platformy Azure i grupą zasobów, aby można było tworzyć wystąpienia kontenerów i zarządzać nimi. Aby na przykład utworzyć kontekst o nazwie myacicontext:

docker context create aci myacicontext

Po wyświetleniu monitu wybierz identyfikator subskrypcji platformy Azure, a następnie wybierz istniejącą grupę zasobów lub utwórz nową grupę zasobów. Jeśli wybierzesz nową grupę zasobów, zostanie ona utworzona przy użyciu nazwy wygenerowanej przez system. 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.

Uruchom polecenie docker context ls , aby potwierdzić, że kontekst ACI został dodany do kontekstów platformy Docker:

docker context ls

Tworzenie kontenera

Po utworzeniu kontekstu platformy Docker można utworzyć kontener na platformie Azure. W tym przewodniku Szybki start użyjesz obrazu publicznego mcr.microsoft.com/azuredocs/aci-helloworld . Ten obraz zawiera małą aplikację internetową napisaną w języku Node.js, która udostępnia statyczną stronę HTML.

Najpierw zmień kontekst usługi ACI. Wszystkie kolejne polecenia platformy Docker są uruchamiane w tym kontekście.

docker context use myacicontext

Uruchom następujące docker run polecenie, aby utworzyć wystąpienie kontenera platformy Azure z portem 80 uwidocznione w Internecie:

docker run -p 80:80 mcr.microsoft.com/azuredocs/aci-helloworld

Przykładowe dane wyjściowe pomyślnego wdrożenia:

[+] Running 2/2
 ⠿ hungry-kirch            Created                                                                               5.1s
 ⠿ single--container--aci  Done                                                                                 11.3s
hungry-kirch

Uruchom polecenie docker ps , aby uzyskać szczegółowe informacje o uruchomionym kontenerze, w tym o publicznym adresie IP:

docker ps

Przykładowe dane wyjściowe pokazują publiczny adres IP, w tym przypadku 52.230.225.232:

CONTAINER ID        IMAGE                                        COMMAND             STATUS              PORTS
hungry-kirch        mcr.microsoft.com/azuredocs/aci-helloworld                       Running             52.230.225.232:80->80/tcp

Teraz przejdź do adresu IP 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.

Widziana w przeglądarce aplikacja wdrożona za pomocą usługi Azure Container Instances

Ściąganie dzienników kontenera

Jeśli trzeba rozwiązać problem z kontenerem lub z uruchomioną na nim aplikacją (lub po prostu wyświetlić dane wyjściowe), zacznij od wyświetlenia dzienników wystąpienia kontenera.

Na przykład uruchom docker logs polecenie , aby wyświetlić dzienniki kontenera hungry-kirch w kontekście ACI:

docker logs hungry-kirch

W dziennikach kontenera powinny być widoczne żądania HTTP GET utworzone podczas przeglądania aplikacji w przeglądarce.

listening on port 80
::ffff:10.240.255.55 - - [07/Jul/2020:17:43:53 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [07/Jul/2020:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"
::ffff:10.240.255.55 - - [07/Jul/2020:17:44:36 +0000] "GET / HTTP/1.1" 304 - "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36"

Czyszczenie zasobów

Po zakończeniu pracy z kontenerem uruchom polecenie docker rm , aby go usunąć. To polecenie zatrzymuje i usuwa wystąpienie kontenera platformy Azure.

docker rm hungry-kirch

Następne kroki

W tym przewodniku Szybki start utworzono wystąpienie kontenera platformy Azure na podstawie obrazu publicznego przy użyciu integracji między platformą Docker i platformą Azure. Dowiedz się więcej o scenariuszach integracji w dokumentacji platformy Docker.

Możesz również użyć rozszerzenia Platformy Docker dla programu Visual Studio Code w celu zintegrowanego środowiska do tworzenia, uruchamiania kontenerów, obrazów i kontekstów oraz zarządzania nimi.

Aby używać narzędzi platformy Azure do tworzenia wystąpień kontenerów i zarządzania nimi, zobacz inne przewodniki Szybki start przy użyciu interfejsu wiersza polecenia platformy Azure, programu Azure PowerShell, witryny Azure Portal i szablonu usługi Azure Resource Manager.

Jeśli chcesz używać narzędzia Docker Compose do definiowania i uruchamiania aplikacji wielokontenerowej lokalnie, a następnie przełączyć się do usługi Azure Container Instances, przejdź do samouczka.