Kurz: Nasazení aplikace flexibilního serveru PHP a Azure Database for MySQL ve službě Aplikace Azure Service
Aplikace Azure Služba poskytuje vysoce škálovatelnou službu hostování webů s automatickými opravami pomocí operačního systému Linux.
V tomto kurzu se dozvíte, jak sestavit a nasadit ukázkovou aplikaci PHP do služby Aplikace Azure Service a jak ji integrovat s flexibilním serverem Azure Database for MySQL na back-endu. Tady použijete připojení veřejného přístupu (povolené IP adresy) v instanci flexibilního serveru Azure Database for MySQL k připojení k aplikaci App Service.
V tomto kurzu se naučíte:
- Vytvoření instance flexibilního serveru Azure Database for MySQL
- Připojení aplikace PHP k instanci flexibilního serveru Azure Database for MySQL
- Nasazení aplikace do služby Aplikace Azure Service
- Aktualizace a opětovné nasazení aplikace
Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure, než začnete. V současné době můžete s bezplatným účtem Azure vyzkoušet flexibilní server Azure Database for MySQL zdarma po dobu 12 měsíců. Další informace najdete v tématu Použití bezplatného účtu Azure k vyzkoušení flexibilního serveru Azure Database for MySQL zdarma.
Požadavky
- Nainstalovat Git
- Rozhraní příkazového řádku Azure (CLI)
- Předplatné Azure Pokud nemáte předplatné Azure, vytvořte si před zahájením bezplatný účet Azure. V současné době můžete s bezplatným účtem Azure vyzkoušet flexibilní server Azure Database for MySQL zdarma po dobu 12 měsíců. Další informace najdete v tématu Použití bezplatného účtu Azure k vyzkoušení flexibilního serveru Azure Database for MySQL zdarma.
Vytvoření flexibilního serveru Azure Database for MySQL
Nejprve zřiďte instanci flexibilního serveru Azure Database for MySQL s připojením k veřejnému přístupu, nakonfigurujte pravidla brány firewall, která aplikaci umožní přístup k serveru, a vytvořte produkční databázi.
Pokud chcete zjistit, jak místo toho používat připojení privátního přístupu a izolovat prostředky aplikace a databáze ve virtuální síti, přečtěte si kurz : Připojení webové aplikace App Services k flexibilnímu serveru Azure Database for MySQL ve virtuální síti.
Vytvoření skupiny zdrojů
Skupina prostředků Azure je logická skupina, ve které se nasazují a spravují prostředky Azure. Pojďme vytvořit skupinu prostředků rg-php-demo pomocí příkazu az group create v umístění centralus .
Otevřete příkazový řádek.
Přihlaste se ke svému účtu Azure.
az login
Zvolte svoje předplatné Azure.
az account set -s <your-subscription-ID>
Vytvořte skupinu prostředků.
az group create --name rg-php-demo --location centralus
Vytvoření instance flexibilního serveru Azure Database for MySQL
Pokud chcete vytvořit instanci flexibilního serveru Azure Database for MySQL s připojením k veřejnému přístupu, spusťte následující příkaz az flexible-server create . Nahraďte hodnoty pro název serveru, uživatelské jméno správce a heslo.
az mysql flexible-server create \ --name <your-mysql-server-name> \ --resource-group rg-php-demo \ --location centralus \ --admin-user <your-mysql-admin-username> \ --admin-password <your-mysql-admin-password>
Teď jste vytvořili instanci flexibilního serveru Azure Database for MySQL v oblasti CentralUS. Server je založený na skladové poště B1MS s výpočetní skladovou jednotkou B1MS s 32 GB úložištěm, 7denní dobou uchovávání záloh a nakonfigurovaným připojením k veřejnému přístupu.
Dále vytvořte pravidlo brány firewall pro instanci flexibilního serveru Azure Database for MySQL, které povolí připojení klientů, spusťte následující příkaz. Když je počáteční i koncová IP adresa nastavená na 0.0.0.0, můžou se k instanci flexibilního serveru Azure připojit jenom jiné prostředky Azure (jako jsou aplikace App Services, virtuální počítače, cluster AKS atd.).
az mysql flexible-server firewall-rule create \ --name <your-mysql-server-name> \ --resource-group rg-php-demo \ --rule-name AllowAzureIPs \ --start-ip-address 0.0.0.0 \ --end-ip-address 0.0.0.0
Pokud chcete vytvořit novou ukázkovou databázi flexibilního serveru Azure Database for MySQL pro použití s aplikací PHP, spusťte následující příkaz:
az mysql flexible-server db create \ --resource-group rg-php-demo \ --server-name <your-mysql-server-name> \ --database-name sampledb
Sestavení aplikace
Pro účely tohoto kurzu použijeme ukázkovou aplikaci PHP, která zobrazuje a spravuje katalog produktů. Aplikace poskytuje základní funkce, jako je zobrazení produktů v katalogu, přidání nových produktů, aktualizace stávajících cen položek a odebrání produktů.
Pokud chcete získat další informace o kódu aplikace, pokračujte a prozkoumejte aplikaci v úložišti GitHub. Informace o připojení aplikace PHP k flexibilnímu serveru Azure Database for MySQL najdete v tématu Použití PHP s flexibilním serverem Azure Database for MySQL.
V tomto kurzu přímo naklonujeme programovou ukázkovou aplikaci a naučíme se ji nasadit ve službě Aplikace Azure Service.
Pokud chcete naklonovat úložiště ukázkové aplikace a přejít do kořenového adresáře úložiště, spusťte následující příkazy:
git clone https://github.com/Azure-Samples/php-mysql-app-service.git cd php-mysql-app-service
Spuštěním následujícího příkazu se ujistěte, že je
main
výchozí větev .git branch -m main
Vytvoření a konfigurace webové aplikace služby Aplikace Azure
Ve službě Aplikace Azure (Web Apps, API Apps nebo Mobile Apps) se aplikace vždy spouští v plánu služby App Service. Plán služby App Service definuje sadu výpočetních prostředků pro provozování webové aplikace. V tomto kroku vytvoříme plán služby Aplikace Azure a webovou aplikaci App Service, která bude hostovat ukázkovou aplikaci.
Pokud chcete vytvořit plán služby App Service na cenové úrovni Free, spusťte následující příkaz:
az appservice plan create --name plan-php-demo \ --resource-group rg-php-demo \ --location centralus \ --sku FREE --is-linux
Pokud chcete nasadit aplikaci do webové aplikace Azure pomocí metod nasazení, jako je FTP nebo Místní Git, musíte nakonfigurovat uživatele nasazení s uživatelským jménem a heslem. Jakmile nakonfigurujete uživatele nasazení, můžete ho využít pro všechna nasazení služby Aplikace Azure Service.
az webapp deployment user set \ --user-name <your-deployment-username> \ --password <your-deployment-password>
Pokud chcete vytvořit webovou aplikaci App Service s modulem runtime PHP 8.0 a nakonfigurovat možnost místního nasazení Gitu pro nasazení aplikace z úložiště Git na místním počítači, spusťte následující příkaz. Nahraďte
<your-app-name>
globálně jedinečným názvem aplikace (platné znaky jsou a-z, 0-9 a -).az webapp create \ --resource-group rg-php-demo \ --plan plan-php-demo \ --name <your-app-name> \ --runtime "PHP|8.0" \ --deployment-local-git
Důležité
Ve výstupu Azure CLI se adresa URL vzdáleného úložiště Git zobrazí ve vlastnosti deploymentLocalGitUrl s formátem
https://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git
. Uložte tuto adresu URL, protože ji budete potřebovat později.Dále nakonfigurujeme nastavení připojení k databázi flexibilního serveru Azure Database for MySQL ve webové aplikaci.
Soubor
config.php
v ukázkové aplikaci PHP načte informace o připojení k databázi (název serveru, název databáze, uživatelské jméno serveru a heslo) z proměnných prostředí pomocígetenv()
funkce. Pokud chcete ve službě App Service nastavit proměnné prostředí jako nastavení aplikace (appsettings), spusťte následující příkaz:az webapp config appsettings set \ --name <your-app-name> \ --resource-group rg-php-demo \ --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"
Případně můžete pomocí konektoru služby vytvořit připojení mezi aplikací App Service a instancí flexibilního serveru Azure Database for MySQL. Další podrobnosti najdete v tématu Integrace flexibilního serveru Azure Database for MySQL s konektorem služby.
Nasazení aplikace pomocí místního Gitu
Teď nasadíme ukázkovou aplikaci PHP do služby Aplikace Azure Service pomocí možnosti Místní nasazení Gitu.
Vzhledem k tomu, že nasazujete hlavní větev, musíte pro aplikaci App Service nastavit výchozí větev nasazení na hlavní. Pokud chcete nastavit DEPLOYMENT_BRANCH v části Nastavení aplikace, spusťte následující příkaz:
az webapp config appsettings set \ --name <your-app-name> \ --resource-group rg-php-demo \ --settings DEPLOYMENT_BRANCH='main'
Ověřte, že jste v kořenovém adresáři úložiště aplikace.
Pokud chcete přidat vzdálené úložiště Azure do místního úložiště Git, spusťte následující příkaz. Nahraďte
<deploymentLocalGitUrl>
adresou URL vzdáleného úložiště Git, který jste uložili v kroku Vytvoření webové aplikace služby App Service.git remote add azure <deploymentLocalGitUrl>
Aplikaci nasadíte spuštěním
git push
následujícího příkazu do vzdáleného prostředí Azure. Když vás Git Credential Manager vyzve k zadání přihlašovacích údajů, zadejte přihlašovací údaje nasazení, které jste vytvořili v kroku Konfigurace uživatele nasazení.git push azure main
Úspěšné nasazení může trvat několik minut.
Otestování aplikace
Nakonec aplikaci otestujte tak, že přejdete na https://<app-name>.azurewebsites.net
položku a pak přidáte, zobrazíte, aktualizujete nebo odstraníte položky z katalogu produktů.
Blahopřejeme! Úspěšně jste nasadili ukázkovou aplikaci PHP do služby Aplikace Azure Service a integrovali ji s flexibilním serverem Azure Database for MySQL na back-endu.
Aktualizace a opětovné nasazení aplikace
Pokud chcete aktualizovat aplikaci Azure, proveďte potřebné změny kódu, potvrďte všechny změny v Gitu a pak nasdílejte změny kódu do Azure.
git add .
git commit -m "Update Azure app"
git push azure main
git push
Po dokončení přejděte do aplikace Azure nebo ji aktualizujte a otestujte nové funkce.
Vyčištění prostředků
V tomto kurzu jste vytvořili všechny prostředky Azure ve skupině prostředků. Pokud předpokládáte, že už tyto prostředky nebudete potřebovat, odstraňte skupinu prostředků spuštěním následujícího příkazu ve službě Cloud Shell:
az group delete --name rg-php-demo