Exercício - Implantar um PHP e MySQL - Aplicativo de Servidor Flexível no Serviço de Aplicativo do Azure
Nesta unidade, você cria e implanta um aplicativo PHP de exemplo no Serviço de Aplicativo do Azure e o integra ao Banco de Dados do Azure para MySQL - Servidor Flexível no back-end.
PASSO 1 - Criar uma Base de Dados do Azure para o servidor flexível MySQL
Primeiro, você provisiona um servidor flexível 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.
Você usa o portal do Azure para percorrer a experiência de criação de servidor flexível do MySQL.
Inicie sessão no portal do Azure com a mesma conta que utilizou para ativar o sandbox.
Na caixa de pesquisa na parte superior da página, digite MySQL e selecione Banco de Dados do Azure para servidores flexíveis MySQL.
Na página Banco de Dados do Azure para servidores flexíveis MySQL, selecione + Criar e, em seguida, selecione Servidor flexível.
Na página Servidor flexível, na guia Noções básicas, insira as informações na tabela a seguir.
Definição Valor sugerido Subscrição Subscrição de Assistente Grupo de recursos Na lista suspensa, selecione o grupo de recursos começando com learn- Nome do servidor Insira um nome globalmente exclusivo que identifique seu servidor flexível. Versão de MySQL 8.0 Tipo de carga de trabalho Selecione Para projetos de desenvolvimento ou hobby Nome de utilizador de administrador Digite mysqladmin. Não use azure_superuser, admin, administrator, root, guest ou public. Palavra-passe Digite 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 alfanumé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 a camada de computação Burstable .
- Na lista suspensa Tamanho da computação, selecione Standard_B1s (1 vCore, 1 GiB de memória, 400 iops máximos).
- Armazenamento
- Verifique se o tamanho de armazenamento (em GB) está definido como 20.
- Selecione IOPS pré-provisionadas e deixe o valor definido como 360.
- Verifique se a caixa de seleção Crescimento automático de armazenamento está marcada.
- Elevada Disponibilidade
- Verifique se a caixa de seleção Habilitar Alta Disponibilidade não está marcada.
- Cópias de segurança
- 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á marcada.
- Computação
Selecione Salvar e navegue até a guia Rede .
Na guia Rede, selecione Método de conectividade de acesso público (endereços IP permitidos), marque Permitir acesso público a este 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 Rever + criar para rever a configuração flexível do seu servidor MySQL.
Selecione Criar para aprovisionar o servidor. O provisionamento pode levar até 10 minutos.
Depois que a implantação estiver concluída, selecione Ir para o recurso para exibir a página Visão geral do Banco de Dados do Azure para o servidor flexível MySQL.
Para o restante deste exercício, execute os comandos usando o Azure Cloud Shell, que aparece à direita desta janela.
Para criar um novo banco de dados de produção MySQL sampledb para usar 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
PASSO 2 - Clone a sua aplicação
Para este exercício, você usa um aplicativo PHP de exemplo que exibe e gerencia um catálogo de produtos. O aplicativo fornece funcionalidades básicas, como visualizar 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.
Nota
Para saber mais sobre o código do aplicativo, vá em frente e explore o aplicativo no repositório GitHub!
Para clonar o repositório de aplicativo de exemplo e alterar para 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 seguinte comando para garantir que a ramificação 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 do Serviço de Aplicações define um conjunto de recursos de computação para a execução de uma aplicação Web. Nesta etapa, você cria 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 na camada de preços 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 seu usuário de implantação, você pode aproveitá-lo para todas as suas 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 tempo de execução do PHP 8.0 e configurar a opção de implantação do Git Local para implantar seu aplicativo a partir de um repositório Git em seu computador local, execute o seguinte comando.
Observação: substitua
<your-app-name>
por um nome de aplicativo exclusivo globalmente (os caracteres válidos são a-z, 0-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
deploymentLocalGitUrl
propriedade, com o formatohttps://<username>@<app-name>.scm.azurewebsites.net/<app-name>.git
. Salve este URL, pois você precisará dele mais tarde.O
config.php
arquivo no aplicativo PHP de exemplo recupera as informações de conexão do banco de dados (nome do servidor, nome do banco de dados, nome de usuário e senha do servidor) de variáveis de ambiente usando agetenv()
função. No Serviço de Aplicativo, para definir variáveis de ambiente como Configurações do 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 flexíveis de conexão do banco de dados do servidor MySQL no Web App.
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 do Git Local.
Como você está implantando a ramificação principal, precisa definir a ramificação de implantação padrão para seu aplicativo do Serviço de Aplicativo como principal. Para definir o DEPLOYMENT_BRANCH em Configurações do 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 controle remoto do Azure ao seu repositório Git local, execute o seguinte comando.
Observação: substitua
<deploymentLocalGitUrl>
pela URL do controle remoto Git que você salvou na etapa Criar um aplicativo Web do Serviço de Aplicativo.git remote add azure <deploymentLocalGitUrl>
Para implantar seu aplicativo executando um
git push
no controle remoto do Azure, execute o seguinte comando. Quando o Git Credential Manager solicitar credenciais, insira as credenciais de implantação que você criou na etapa Configurar um usuário de implantação.git push azure main
A implantação pode levar alguns minutos para ser bem-sucedida.
PASSO 5 - Testar a sua aplicação
Por fim, teste o aplicativo navegando até https://<app-name>.azurewebsites.net
e adicionando, exibindo, atualizando ou excluindo itens do catálogo de produtos.
Parabéns! Você implantou com êxito um aplicativo PHP de exemplo no Serviço de Aplicativo do Azure e o integrou ao Banco de Dados do Azure para MySQL - Servidor Flexível no back-end.