Exercício – Implantar um aplicativo PHP e MySQL – Servidor Flexível no Serviço de Aplicativo do Azure
Nesta unidade, você vai criar e implantar um aplicativo PHP de exemplo no Serviço de Aplicativo do Azure e integrá-lo ao Banco de Dados do Azure para MySQL – Servidor Flexível no back-end.
Etapa 1 – Criar um servidor flexível do Banco de Dados do Azure para MySQL
Primeiro, você provisiona um servidor flexível do MySQL com conectividade de acesso público, configura regras de firewall para permitir que o aplicativo acesse o servidor e cria um banco de dados de produção.
Use o portal do Azure para percorrer a experiência de criação de servidor flexível do MySQL.
Entre no portal do Azure usando a mesma conta usada para ativar a área restrita.
Na caixa de pesquisa na parte superior da página, insira MySQL e selecione Servidores flexíveis do Banco de Dados do Azure para MySQL.
Na página Servidores flexíveis do Banco de Dados do Azure para MySQL, selecione + Criare selecione Servidor Flexível.
Na página servidor flexível, na guia Noções básicas, insira as informações na tabela a seguir.
Configuração Valor sugerido Subscription Assinatura do Concierge Grupo de recursos Na lista suspensa, selecione o grupo de recursos que começa com learn- Nome do servidor Insira um nome exclusivo globalmente que identifique o servidor flexível. Versão do MySQL 8.0 Tipo de carga de trabalho Selecione Para projetos de desenvolvimento ou hobby Nome de usuário do administrador Insira mysqladmin. Não use as palavras azure_superuser, admin, administrador, root, guest ou public. Senha Insira Passw0rd123. A senha deve conter entre 8 e 128 caracteres e incluir caracteres de três categorias: Letras maiúsculas em inglês, letras minúsculas em inglês, números (0 a 9) e caracteres não numéricos (como !, $, #, %). Mantenha os valores padrão para todas as outras configurações.
Na guia Noções básicas, em Computação + Armazenamento, selecione Configurar servidor.
Na página Computação + Armazenamento, defina as seguintes configurações:
- Computação
- Selecione o nível de computaçãoCom Capacidade de Intermitência.
- Na lista suspensa Tamanho da Computação, selecione Standard_B1s (1 vCore, 1 GiB de memória, 400 iops máximos).
- Storage
- Verifique se o Tamanho do Armazenamento (em GB) está definido como 20.
- Selecione IOPS pré-provisionado e deixe o valor definido como 360.
- Verifique se a caixa de seleção Crescimento Automático do Armazenamento está selecionada.
- Alta disponibilidade
- Certifique-se de que a caixa de seleção Habilitar alta disponibilidade não esteja selecionada.
- Backups
- Verifique se o Período de retenção de Backup (em dias) está definido como 7.
- Verifique se a caixa de seleção Recuperar de interrupção regional ou desastre não está selecionada.
- Computação
Selecione Salvar e navegue até a guiaRede .
Na guia Rede, selecione o método de conectividade Acesso público (endereços IP permitidos), marque Permitir acesso público a esse recurso pela Internet usando um endereço IP público e marque Permitir acesso público de qualquer serviço do Azure no Azure para este servidor, conforme mostrado na captura de tela a seguir.
Selecione Examinar + Criar para examinar a configuração do servidor flexível do MySQL.
Selecione Criar para provisionar o servidor. O provisionamento pode levar até 10 minutos.
Depois que a implantação for concluída, selecione Acessar recurso para abrir a página Visão geral do servidor flexível do Banco de Dados do Azure para MySQL.
Para o restante deste exercício, você executa os comandos usando o Azure Cloud Shell, que aparece à direita desta janela.
Para criar o banco de dados de produção MySQL sampledb a ser usado com o aplicativo PHP, execute o seguinte comando:
az mysql flexible-server db create \
--resource-group <rgn>[Sandbox resource group name]</rgn> \
--server-name <your-mysql-server-name> \
--database-name sampledb
ETAPA 2 – Clonar seu aplicativo
Para este exercício, você usa um aplicativo PHP de exemplo que exibe e gerencia um catálogo de produtos. O aplicativo oferece funcionalidades básicas, como exibir os produtos no catálogo, adicionar novos produtos, atualizar os preços dos itens existentes e remover produtos.
Você clona diretamente o aplicativo codificado e aprende a implantá-lo no Serviço de Aplicativo do Azure.
Observação
Para saber mais sobre o código do aplicativo, você pode explorar o aplicativo no repositório do GitHub.
Para clonar o repositório do aplicativo de exemplo e acessar a raiz do repositório, execute os seguintes comandos:
git clone https://github.com/Azure-Samples/php-mysql-app-service.git cd php-mysql-app-service
Execute o comando a seguir para garantir que o branch padrão seja
main
.git branch -m main
Etapa 3 – Criar e configurar um aplicativo Web do Serviço de Aplicativo do Azure
No Serviço de Aplicativo do Azure (aplicativos Web, aplicativos de API ou aplicativos móveis), um aplicativo sempre é executado em um Plano do Serviço de Aplicativo. Um plano de serviço de aplicativo define um conjunto de recursos de computação para um aplicativo Web ser executado. Nesta etapa, você criará um plano do Serviço de Aplicativo do Azure e um aplicativo Web do Serviço de Aplicativo dentro dele, que hospedará o aplicativo de exemplo.
Para criar um Plano do Serviço de Aplicativo no tipo de preço Gratuito, execute o seguinte comando:
az appservice plan create --name plan-learn \ --resource-group <rgn>[Sandbox resource group name]</rgn> \ --location centralus \ --sku FREE --is-linux
Se você quiser implantar um aplicativo no aplicativo Web do Azure usando métodos de implantação como FTP ou Git Local, precisará configurar um usuário de implantação com credenciais de nome de usuário e senha. Depois de configurar o usuário de implantação, você poderá aproveitá-lo em todas as implantações do Serviço de Aplicativo do Azure.
az webapp deployment user set \ --user-name <your-deployment-username> \ --password <your-deployment-password>
Para criar um aplicativo Web do Serviço de Aplicativo com o runtime do PHP 8.0 e configurar a opção de implantação Git Local para implantar o aplicativo em um repositório Git no computador local, execute o comando a seguir.
Observação: substitua
<your-app-name>
por um nome do aplicativo exclusivo globalmente (os caracteres válidos são de a até z, de 0 a 9 e -).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
Importante
Na saída da CLI do Azure, a URL do Git remoto é exibida na propriedade
deploymentLocalGitUrl
, com o formatohttps://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git
. Salve essa URL pois você precisará dela mais tarde.O arquivo
config.php
no aplicativo PHP de exemplo recupera as informações de conexão de banco de dados (nome do servidor, nome do banco de dados, nome de usuário do servidor e senha) de variáveis de ambiente usando a funçãogetenv()
. No Serviço de Aplicativo, para definir variáveis de ambiente como Configurações de Aplicativo (appsettings), execute o seguinte comando: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"
Este comando acima define as configurações de conexão de banco de dados do servidor flexível MySQL no Aplicativo Web.
ETAPA 4 – Implantar seu aplicativo usando o Git Local
Agora, você implanta o aplicativo PHP de exemplo no Serviço de Aplicativo do Azure usando a opção de implantação local do Git.
Como você está implantando o branch principal, defina o branch de implantação padrão do aplicativo do Serviço de Aplicativo como principal. Para definir o DEPLOYMENT_BRANCH em Configurações de Aplicativo, execute o seguinte comando:
az webapp config appsettings set \ --name <your-app-name> \ --resource-group <rgn>[Sandbox resource group name]</rgn> \ --settings DEPLOYMENT_BRANCH='main'
Verifique se você está no diretório raiz do repositório do aplicativo.
Para adicionar um Azure remoto ao repositório Git local, execute o comando a seguir.
Observação: substitua
<deploymentLocalGitUrl>
pela URL do Git remoto que você salvou na etapa Criar um aplicativo Web do Serviço de Aplicativo.git remote add azure <deploymentLocalGitUrl>
Para implantar o aplicativo executando um
git push
no Azure remoto, execute o comando a seguir. Quando o Git Credential Manager solicitar credenciais, insira as credenciais de implantação criadas na etapa Configurar um usuário de implantação.git push azure main
A implantação pode levar alguns minutos para ser concluída.
Etapa 5 – Testar seu trabalho
Por fim, teste o aplicativo navegando até https://<app-name>.azurewebsites.net
e, em seguida, adicionando, exibindo, atualizando ou excluindo itens do catálogo de produtos.
Parabéns! Você criou e implantou um aplicativo PHP de exemplo com êxito no Serviço de Aplicativo do Azure e o integrou ao Banco de Dados do Azure para MySQL – Servidor Flexível no back-end.