Ćwiczenie — wdrażanie aplikacji PHP i MySQL — elastyczny serwer w usłudze aplikacja systemu Azure
W tej lekcji utworzysz i wdrożysz przykładową aplikację PHP w usłudze aplikacja systemu Azure Service i zintegrujesz ją z usługą Azure Database for MySQL — serwer elastyczny na zapleczu.
KROK 1. Tworzenie elastycznego serwera usługi Azure Database for MySQL
Najpierw należy aprowizować serwer elastyczny MySQL z łącznością z dostępem publicznym, skonfigurować reguły zapory, aby umożliwić aplikacji dostęp do serwera i utworzyć produkcyjną bazę danych.
W witrynie Azure Portal przedstawiono środowisko tworzenia serwera elastycznego MySQL.
Zaloguj się do Portalu Azure przy użyciu tego samego konta, którego użyłeś(-aś) do aktywacji sandboxa.
W polu wyszukiwania w górnej części strony wprowadź MySQL, a następnie wybierz pozycję Serwery elastyczne usługi Azure Database for MySQL.
Na stronie serwerów elastycznych usługi Azure Database for MySQL wybierz pozycję + Utwórz, a następnie wybierz pozycję Serwer elastyczny.
Na stronie Serwer elastyczny na karcie Podstawy wprowadź informacje w poniższej tabeli.
Ustawienie Sugerowana wartość Subskrypcja Subskrypcja Concierge Grupa zasobów Z listy rozwijanej wybierz grupę zasobów rozpoczynającą się od learn- Nazwa serwera Wprowadź globalnie unikatową nazwę identyfikującą serwer elastyczny. Wersja programu MySQL 8.0 Typ obciążenia Wybierz pozycję Dla projektów programistycznych lub hobby Nazwa użytkownika administratora Wprowadź mysqladmin. Nie używaj azure_superuser, administratora, administratora, głównego, gościa ani publicznego. Hasło Wprowadź Passw0rd123. Hasło musi zawierać od 8 do 128 znaków i zawierać znaki z trzech kategorii: wielkie litery angielskie, małe litery angielskie, cyfry (od 0 do 9) i znaki niefanumeryczne (takie jak !, $, #, %). Zachowaj wartości domyślne dla wszystkich innych ustawień.
Na karcie Podstawy w obszarze Obliczenia i magazyn wybierz pozycję Konfiguruj serwer.
Na stronie Obliczenia i przechowywanie skonfiguruj następujące ustawienia:
-
Liczyć
- Wybierz warstwę obliczeniową Burstable.
- Z listy rozwijanej Obliczeniowyrozmiar wybierz Standard_B1s (1 vCore, 1 GiB pamięci, 400 max IOPS).
-
Składowanie
- Sprawdź, czy rozmiar magazynu (w GB) ma wartość 20.
- Wybierz wstępnie aprowizowane IOPS i pozostaw wartość ustawioną na 360.
- Sprawdź, czy pole wyboru Automatyczny wzrost pamięci jest zaznaczone.
-
Wysoka dostępność
- Sprawdź, czy pole wyboru Włącz wysoką dostępność nie jest zaznaczone.
-
Kopie zapasowe
- Sprawdź, czy okres przechowywania kopii zapasowej (w dniach) ma wartość 7.
- Sprawdź, czy pole wyboru Odzyskiwanie po awarii regionalnej lub katastrofie nie jest zaznaczone.
-
Liczyć
Wybierz pozycję Zapisz, a następnie przejdź do karty Sieć .
Na karcie Sieć wybierz metodę łączności Dostęp publiczny (dozwolone adresy IP), zaznacz pole Wyboru Zezwalaj na publiczny dostęp do tego zasobu za pośrednictwem Internetu przy użyciu publicznego adresu IP i zaznacz pole wyboru Zezwalaj na dostęp publiczny z dowolnej usługi platformy Azure na tym serwerze , jak pokazano na poniższym zrzucie ekranu.
Wybierz pozycję Przejrzyj i utwórz , aby przejrzeć konfigurację serwera elastycznego MySQL.
Wybierz pozycję Utwórz , aby aprowizować serwer. Aprowizowanie może potrwać do 10 minut.
Po zakończeniu wdrażania wybierz Przejdź do zasobu, aby wyświetlić stronę główną elastycznego serwera usługi Azure Database for MySQL.
W pozostałej części tego ćwiczenia uruchomisz polecenia przy użyciu usługi Azure Cloud Shell, która jest wyświetlana po prawej stronie tego okna.
Aby utworzyć nową produkcyjną bazę danych MySQL sampledb do użycia z aplikacją PHP, uruchom następujące polecenie:
az mysql flexible-server db create \
--resource-group <rgn>[Sandbox resource group name]</rgn> \
--server-name <your-mysql-server-name> \
--database-name sampledb
KROK 2. Klonowanie aplikacji
W tym ćwiczeniu użyjesz przykładowej aplikacji PHP, która wyświetla katalog produktów i zarządza nim. Aplikacja udostępnia podstawowe funkcje, takie jak wyświetlanie produktów w katalogu, dodawanie nowych produktów, aktualizowanie istniejących cen produktów i usuwanie produktów.
Bezpośrednio sklonujesz kodowaną aplikację i dowiesz się, jak ją wdrożyć w usłudze aplikacja systemu Azure Service.
Uwaga
Aby dowiedzieć się więcej na temat kodu aplikacji, przejdź dalej i zapoznaj się z aplikacją w repozytorium GitHub!
Aby sklonować przykładowe repozytorium aplikacji i przejść do katalogu głównego repozytorium, uruchom następujące polecenia:
git clone https://github.com/Azure-Samples/php-mysql-app-service.git cd php-mysql-app-service
Uruchom następujące polecenie, aby upewnić się, że domyślna gałąź to
main
.git branch -m main
KROK 3. Tworzenie i konfigurowanie aplikacji internetowej usługi aplikacja systemu Azure Service
W usłudze aplikacja systemu Azure Service (Web Apps, API Apps lub Mobile Apps) aplikacja jest zawsze uruchamiana w planie usługi App Service. Plan usługi App Service definiuje zestaw zasobów obliczeniowych dla aplikacji internetowej używanych podczas jej uruchamiania. W tym kroku utworzysz w nim plan usługi aplikacja systemu Azure i aplikację internetową usługi App Service, która będzie hostować przykładową aplikację.
Aby utworzyć plan usługi App Service w warstwie cenowej Bezpłatna, uruchom następujące polecenie:
az appservice plan create --name plan-learn \ --resource-group <rgn>[Sandbox resource group name]</rgn> \ --location centralus \ --sku FREE --is-linux
Jeśli chcesz wdrożyć aplikację w aplikacji internetowej platformy Azure przy użyciu metod wdrażania, takich jak FTP lub Local Git, musisz skonfigurować użytkownika wdrożenia przy użyciu poświadczeń nazwy użytkownika i hasła. Po skonfigurowaniu użytkownika wdrożenia możesz skorzystać z niego dla wszystkich wdrożeń usługi aplikacja systemu Azure Service.
az webapp deployment user set \ --user-name <your-deployment-username> \ --password <your-deployment-password>
Aby utworzyć aplikację internetową usługi App Service ze środowiskiem uruchomieniowym PHP 8.0 i skonfigurować opcję lokalnego wdrażania usługi Git w celu wdrożenia aplikacji z repozytorium Git na komputerze lokalnym, uruchom następujące polecenie.
Uwaga: zastąp
<your-app-name>
symbol globalnie unikatową nazwą aplikacji (prawidłowe znaki to a-z, 0–9 i -).az webapp create \ --resource-group <rgn>[Sandbox resource group name]</rgn> \ --plan plan-learn \ --name <your-app-name> \ --runtime "PHP|8.0" \ --deployment-local-git
Ważne
W danych wyjściowych interfejsu wiersza polecenia platformy Azure adres URL zdalnego narzędzia Git jest wyświetlany we
deploymentLocalGitUrl
właściwości o formaciehttps://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git
. Zapisz ten adres URL, ponieważ będzie on potrzebny później.Plik
config.php
w przykładowej aplikacji PHP pobiera informacje o połączeniu z bazą danych (nazwę serwera, nazwę bazy danych, nazwę serwera i hasło) ze zmiennych środowiskowych przy użyciugetenv()
funkcji . W usłudze App Service, aby ustawić zmienne środowiskowe jako Ustawienia aplikacji (appsettings), uruchom następujące polecenie:az webapp config appsettings set \ --name <your-app-name> \ --resource-group <rgn>[Sandbox resource group name]</rgn> \ --settings DB_HOST="<your-server-name>.mysql.database.azure.com" \ DB_DATABASE="sampledb" \ DB_USERNAME="<your-mysql-admin-username>" \ DB_PASSWORD="<your-mysql-admin-password>" \ MYSQL_SSL="true"
To polecenie powyżej konfiguruje ustawienia połączenia z elastyczną bazą danych serwera MySQL w aplikacji internetowej.
KROK 4. Wdrażanie aplikacji przy użyciu lokalnego narzędzia Git
Teraz wdrożysz przykładową aplikację PHP w usłudze aplikacja systemu Azure przy użyciu opcji lokalnego wdrożenia git.
Ponieważ wdrażasz gałąź główną, musisz ustawić domyślną gałąź wdrożenia dla aplikacji usługi App Service na główną. Aby ustawić DEPLOYMENT_BRANCH w obszarze Ustawienia aplikacji, uruchom następujące polecenie:
az webapp config appsettings set \ --name <your-app-name> \ --resource-group <rgn>[Sandbox resource group name]</rgn> \ --settings DEPLOYMENT_BRANCH='main'
Sprawdź, czy jesteś w katalogu głównym repozytorium aplikacji.
Aby dodać zdalną platformę Azure do lokalnego repozytorium Git, uruchom następujące polecenie.
Uwaga: Zastąp
<deploymentLocalGitUrl>
adresem URL zdalnego repozytorium Git zapisanym w kroku Tworzenie aplikacji internetowej usługi App Service.git remote add azure <deploymentLocalGitUrl>
Aby wdrożyć aplikację, wykonując polecenie na
git push
platformie Azure zdalnie, uruchom następujące polecenie. Gdy menedżer poświadczeń usługi Git wyświetli monit o podanie poświadczeń, wprowadź poświadczenia wdrożenia utworzone w kroku Konfigurowanie użytkownika wdrożenia .git push azure main
Wdrożenie może potrwać kilka minut.
KROK 5. Testowanie aplikacji
Na koniec przetestuj aplikację, przechodząc do https://<app-name>.azurewebsites.net
witryny , a następnie dodając, wyświetlając, aktualizując lub usuwając elementy z katalogu produktów.
Gratulacje! Pomyślnie wdrożono przykładową aplikację PHP w usłudze aplikacja systemu Azure i zintegrowano ją z usługą Azure Database for MySQL — serwer elastyczny na zapleczu.