Ćwiczenie — tworzenie witryny internetowej platformy Azure przy użyciu interfejsu wiersza polecenia
Następnie użyjemy interfejsu wiersza polecenia platformy Azure, aby utworzyć grupę zasobów, a następnie wdrożyć aplikację internetową w tej grupie zasobów.
Bezpłatna piaskownica umożliwia tworzenie zasobów w podzestawie regionów globalnych platformy Azure. Podczas tworzenia zasobów wybierz region z poniższej listy:
- westus2
- southcentralus
- centralus
- eastus
- westeurope
- southeastasia
- japaneast
- brazilsouth
- australiasoutheast
- centralindia
Korzystanie z grupy zasobów
Podczas pracy z własną maszyną i subskrypcją platformy Azure musisz zalogować się do platformy Azure przy użyciu az login
polecenia . Logowanie jest jednak niepotrzebne w przypadku korzystania ze środowiska piaskownicy usługi Cloud Shell opartego na przeglądarce.
Następnie zwykle należy utworzyć grupę zasobów dla wszystkich powiązanych zasobów platformy Azure za pomocą az group create
polecenia , ale w tym ćwiczeniu utworzono następującą grupę zasobów:
Uwaga
W tym ćwiczeniu używamy regionu Wschodnie stany USA. Jeśli wystąpi problem podczas tworzenia planu usługi App Service, wybierz inny region z poprzedniej listy.
Pierwszym krokiem w tym ćwiczeniu jest utworzenie kilku zmiennych do użycia w kolejnych poleceniach:
export RESOURCE_GROUP=<rgn>[sandbox resource group name]</rgn> export AZURE_REGION=eastus export AZURE_APP_PLAN=popupappplan-$RANDOM export AZURE_WEB_APP=popupwebapp-$RANDOM
Możesz w interfejsie wiersza polecenia platformy Azure wydać polecenie wyświetlenia listy wszystkich grup zasobów w tabeli. Powinna istnieć tylko jedna, gdy jesteś w bezpłatnej piaskownicy platformy Azure:
az group list --output table
Napiwek
Do kopiowania poleceń do schowka możesz używać przycisku Kopiuj. Aby wkleić, kliknij prawym przyciskiem myszy nowy wiersz w terminalu usługi Cloud Shell i wybierz polecenie Wklej lub użyj skrótu klawiaturowego Shift+Insert (⌘+V w systemie macOS).
Jeśli będziesz kontynuować pracę na platformie Azure, możesz mieć kilka grup zasobów. Jeśli lista grup zawiera wiele elementów, możesz filtrować zwracane wartości, dodając opcję
--query
. Spróbuj uruchomić następujące polecenie:az group list --query "[?name == '$RESOURCE_GROUP']"
Zapytanie jest formatowane przy użyciu języka JMESPath — standardowego języka zapytań dla żądań JSON. Więcej informacji na temat tego zaawansowanego języka filtrowania jest dostępnych w witrynie http://jmespath.org/. Zapytania są także bardziej szczegółowo omówione w module Zarządzanie maszynami wirtualnymi za pomocą interfejsu wiersza polecenia platformy Azure.
Procedura tworzenia planu usług
Po uruchomieniu usługi Web Apps przy użyciu usługi aplikacja systemu Azure płacisz za zasoby obliczeniowe platformy Azure używane przez aplikację i koszty zasobów zależą od planu usługi App Service skojarzonego z usługą Web Apps. Za pomocą planów usług jest określany region używany na potrzeby centrum danych aplikacji, liczba używanych maszyn wirtualnych i warstwa cenowa.
Utwórz plan usługi App Service, w ramach którego zostanie uruchomiona Twoja aplikacja. Poniższe polecenie określa warstwę cenową Bezpłatna, ale można uruchomić polecenie
az appservice plan create --help
, aby zobaczyć pozostałe warstwy cenowe.Uwaga
Nazwy aplikacji i planów muszą być unikatowe we wszystkich platformach Azure. Dla utworzonych wcześniej zmiennych zostaną przypisane wartości losowe jako sufiksy, aby zapewnić ich unikatowość. Jeśli jednak podczas tworzenia jakichkolwiek zasobów wystąpi błąd, należy uruchomić wymienione wcześniej polecenia, aby zresetować wszystkie zmienne z nowymi wartościami losowymi.
Jeśli wystąpi błąd dotyczący grupy zasobów, uruchom podane wcześniej polecenia z inną wartością grupy zasobów.
az appservice plan create --name $AZURE_APP_PLAN --resource-group $RESOURCE_GROUP --location $AZURE_REGION --sku FREE
Wykonanie tego polecenia może potrwać kilka minut.
Sprawdź, czy plan usługi został utworzony pomyślnie, wyświetlając listę wszystkich planów w tabeli:
az appservice plan list --output table
Powinna zostać wyświetlona odpowiedź podobna do poniższego przykładu:
Kind Location MaximumNumberOfWorkers Name NumberOfSites ResourceGroup Status ------ ---------- ------------------------ ------------------ --------------- ------------------------------------------ -------- app East US 3 popupappplan-54321 0 Learn-12345678-1234-1234-1234-123456789abc Ready
Tworzenie aplikacji internetowej
Następnie utwórz aplikację internetową w planie usługi. Kod można wdrożyć w tym samym czasie, ale w tym przykładzie utworzymy aplikację internetową i wdrożymy kod w oddzielnych krokach.
Aby utworzyć aplikację internetową, podaj nazwę aplikacji internetowej i nazwę utworzonego wcześniej planu aplikacji. Podobnie jak nazwa planu aplikacji, nazwa aplikacji internetowej musi być unikatowa. Utworzone wcześniej zmienne przypisują wartości losowe, które powinny być wystarczające dla tego ćwiczenia. Wykonanie tego polecenia może potrwać kilka minut.
az webapp create --name $AZURE_WEB_APP --resource-group $RESOURCE_GROUP --plan $AZURE_APP_PLAN
Sprawdź, czy aplikacja została pomyślnie utworzona, wyświetlając listę wszystkich aplikacji w tabeli:
az webapp list --output table
Powinna zostać wyświetlona odpowiedź podobna do poniższego przykładu:
Name Location State ResourceGroup DefaultHostName AppServicePlan ----------------- ---------- ------- ------------------------------------------ ----------------------------------- ------------------ popupwebapp-12345 East US Running Learn-12345678-1234-1234-1234-123456789abc popupwebapp-12345.azurewebsites.net popupappplan-54321
Zanotuj nazwę DefaultHostName z tabeli. Ten adres jest adresem URL nowej witryny internetowej. Platforma Azure udostępnia witrynę internetową za pośrednictwem unikatowej nazwy aplikacji w domenie
azurewebsites.net
. Jeśli na przykład nazwa aplikacji to "popupwebapp-12345", adres URL witryny internetowej to:http://popupwebapp-12345.azurewebsites.net
. Możesz również użyć następującego skryptu, aby zwrócić adres HTTP:site="http://$AZURE_WEB_APP.azurewebsites.net" echo $site
Aby uzyskać domyślny kod HTML dla przykładowej aplikacji, użyj narzędzia CURL z wartością DefaultHostName:
curl $AZURE_WEB_APP.azurewebsites.net
Powinna zostać wyświetlona odpowiedź podobna do poniższego przykładu:
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Microsoft Azure App Service - Welcome</title><link rel="shortcut icon" href="https://appservice.azureedge.net/images/app-service/v4/favicon.ico" type="image/x-icon"/><link href="https://appservice.azureedge.net/css/app-service/v4/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous"/><style>html, body{height: 100%; background-color: #ffffff; color: #000000; font-size: 13px;}*{border-radius: 0 !important;}</style> ... (continued)
Wdrażanie kodu z usługi GitHub
Ostatnim krokiem jest wdrożenie kodu z repozytorium GitHub do aplikacji internetowej. Użyjmy podstawowej strony JĘZYKA PHP dostępnej w repozytorium GitHub Przykłady platformy Azure, które wyświetla komunikat "Hello World!" podczas jego wykonywania. Upewnij się, że używasz utworzonej nazwy aplikacji internetowej. Wykonanie tego polecenia może potrwać kilka minut.
az webapp deployment source config --name $AZURE_WEB_APP --resource-group $RESOURCE_GROUP --repo-url "https://github.com/Azure-Samples/php-docs-hello-world" --branch master --manual-integration
Po wdrożeniu ponownie przejdź do witryny za pomocą przeglądarki lub narzędzia CURL:
curl $AZURE_WEB_APP.azurewebsites.net
Strona z napisem „Hello World!”
Hello World!
W tym ćwiczeniu przedstawiono typowy wzorzec interaktywnej sesji wiersza polecenia platformy Azure. Najpierw użyto standardowego polecenia, aby utworzyć nową grupę zasobów. Następnie użyto zestawu poleceń do wdrożenia zasobu (w tym przykładzie jest to aplikacja internetowa) w tej grupie zasobów. Ten zestaw poleceń można łatwo połączyć w skrypt powłoki i wykonać go za każdym razem, gdy musisz utworzyć ten sam zasób.