Ć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 witryny Azure Portal przy użyciu tego samego konta, które zostało użyte do aktywowania piaskownicy.
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ź nazwę mysqladmin. Nie używaj azure_superuser, administratora, administratora, głównego, gościa ani publicznego. Hasło Wprowadź wartość 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 magazyn skonfiguruj następujące ustawienia:
- Środowisko obliczeniowe
- Wybierz warstwę obliczeniową z możliwością serii.
- Z listy rozwijanej Rozmiar obliczeniowy wybierz pozycję Standard_B1s (1 rdzeń wirtualny, 1 gib pamięci, 400 maksymalnych operacji we/wy na sekundę).
- Storage
- Sprawdź, czy rozmiar magazynu (w GB) ma wartość 20.
- Wybierz wstępnie aprowizowaną operację we/wy na sekundę i pozostaw wartość ustawioną na 360.
- Sprawdź, czy pole wyboru Auto-wzrost magazynu jest zaznaczone.
- Wysoka dostępność
- Sprawdź, czy pole wyboru Włącz wysoką dostępność nie jest zaznaczone.
- Tworzenie kopii zapasowych
- Sprawdź, czy okres przechowywania kopii zapasowej (w dniach) ma wartość 7.
- Sprawdź, czy pole wyboru Odzyskaj po awarii regionalnej lub awarii nie jest zaznaczone.
- Środowisko obliczeniowe
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 pozycję Przejdź do zasobu, aby wyświetlić stronę przeglądu serwera elastycznego 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>
ciąg adresem URL zdalnego narzędzia 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.