Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Neste início rápido, você implanta um aplicativo Web Python (Django, Flask ou FastAPI) no Serviço de Aplicativo do Azure. O Serviço de Aplicativo do Azure é um serviço de hospedagem Web totalmente gerenciado que dá suporte a aplicativos Python hospedados em um ambiente de servidor Linux.
Para concluir este início rápido, vai precisar de:
- Uma conta do Azure com uma subscrição ativa. Crie uma conta gratuitamente.
- Python 3.14 ou superior instalado localmente.
Nota
Este artigo contém instruções atuais sobre como implantar um aplicativo Web Python usando o Serviço de Aplicativo do Azure. Python no Windows não é mais suportado.
Saltar para o fim
Você pode implantar rapidamente o aplicativo de exemplo neste tutorial usando a CLI do Desenvolvedor do Azure e vê-lo em execução no Azure. Basta executar os seguintes comandos no Azure Cloud Shelldesejado e seguir o prompt:
mkdir flask-quickstart
cd flask-quickstart
azd init --template https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart
azd up
E, para excluir os recursos:
azd down
Aplicação de exemplo
Este início rápido pode ser concluído usando Flask, Django ou FastAPI. Um aplicativo de exemplo em cada estrutura é fornecido para ajudá-lo a acompanhar este início rápido. Faça o download ou clone a aplicação de exemplo para o computador local.
git clone https://github.com/Azure-Samples/msdocs-python-flask-webapp-quickstart
Para executar o aplicativo localmente:
Vá para a pasta do aplicativo:
cd msdocs-python-flask-webapp-quickstartCrie um ambiente virtual para o aplicativo:
py -m venv .venv .venv\scripts\activateInstale as dependências:
pip install -r requirements.txtExecute a aplicação:
flask runNavegue até o aplicativo de exemplo em
http://localhost:5000em um navegador da Web.
Tem problemas? Deixe-nos saber.
Criar uma aplicação Web no Azure
Para hospedar seu aplicativo no Azure, você precisa criar um aplicativo Web do Serviço de Aplicativo do Azure no Azure. Você pode criar um aplicativo Web usando a CLI do Azure, o VS Code, o pacote de extensão das Ferramentas do Azure ou o portal do Azure.
Os comandos da CLI do Azure podem ser executados em um computador com a CLI do Azure instalada.
Crie os recursos do Azure e depois implemente a sua aplicação usando comandos CLI do Azure separados.
Se necessário, faça logon no Azure usando az login.
az login
Substitua <app-name> por um nome globalmente único. Crie um grupo de recursos e um plano de App Service, e depois crie a aplicação web usando az webapp create.
az group create --name myResourceGroup --location eastus
az appservice plan create --name myAppServicePlan --resource-group myResourceGroup --sku P0v3 --is-linux
az webapp create --name <app-name> --resource-group myResourceGroup --plan myAppServicePlan --runtime "PYTHON:3.14"
az webapp config appsettings set --name <app-name> --resource-group myResourceGroup --settings SCM_DO_BUILD_DURING_DEPLOYMENT=true
- Utilize o parâmetro
--runtimepara especificar a versão do Python em que a sua aplicação é executada. Este exemplo usa Python 3.14. Para listar runtimes Python suportados, useaz webapp list-runtimes --os-type linux --runtime python --output table. - Utilize o parâmetro
--skupara definir o tamanho (CPU e memória) e custo do plano do App Service. Este exemplo utiliza o plano de serviço P0v3 (Premium v3), que implica um custo na sua subscrição do Azure. Para uma lista completa de planos de App Service, consulte preços do App Service. - Substitui
eastuspela região que preferires. Para listar as regiões disponíveis, executeaz account list-locationscom--output table. - A
SCM_DO_BUILD_DURING_DEPLOYMENTconfiguração permite a compilação do Oryx, incluindo a instalação das dependências em requirements.txt, ao implementar o ficheiro de origem.
Crie um ficheiro ZIP com os ficheiros da aplicação, incluindo requirements.txt, na raiz do arquivo. Exclua ficheiros locais como .venv, .git e .env. Para instruções específicas da plataforma, consulte Criar um ficheiro ZIP da sua aplicação no separador Implementar com um ficheiro ZIP. Depois, implemente o arquivo usando az webapp deploy:
az webapp deploy --name <app-name> --resource-group myResourceGroup --src-path <zip-file-path> --type zip
A implementação pode demorar alguns minutos. Navegue para https://<app-name>.azurewebsites.net para ver a sua aplicação. Para transmitir em fluxo os registos, ative-os executando az webapp log config --name <app-name> --resource-group myResourceGroup --docker-container-logging filesystem e, depois, execute az webapp log tail --name <app-name> --resource-group myResourceGroup.
Tem problemas? Deixe-nos saber.
Implantar o código do aplicativo no Azure
O Serviço de Aplicativo do Azure dá suporte a vários métodos para implantar seu código de aplicativo no Azure, incluindo Ações do GitHub e todas as principais ferramentas de CI/CD. Este artigo se concentra em como implantar seu código de sua estação de trabalho local no Azure.
Os comandos do CLI do Azure no passo anterior criaram os recursos e implementaram a aplicação. Podes passar para o próximo passo.
Tem problemas? Consulte primeiro o Guia de solução de problemas. Se isso não ajudar, informe-nos.
Configurar script de inicialização
Com base na presença de determinados arquivos em uma implantação, o Serviço de Aplicativo deteta automaticamente se um aplicativo é um aplicativo Django ou Flask e executa etapas padrão para executar seu aplicativo. Para aplicações baseadas noutros frameworks web como o FastAPI, pode ser necessário configurar um script de arranque para o App Service executar a sua aplicação. Caso contrário, o App Service executa uma aplicação predefinida de apenas leitura localizada na pasta opt/defaultsite .
- Python 3.14 e versões posteriores: App Service deteta e executa automaticamente aplicações FastAPI. Não é necessário qualquer comando de arranque.
- Python 3.13 e anteriores: Deve configurar um comando de arranque personalizado.
Para saber mais sobre como o Serviço de Aplicativo executa aplicativos Python e como você pode configurar e personalizar seu comportamento com seu aplicativo, consulte Configurar um aplicativo Linux Python para o Serviço de Aplicativo do Azure.
O Serviço de Aplicativo deteta automaticamente a presença de um aplicativo Flask. Nenhuma configuração adicional é necessária para este início rápido.
Navegue até a aplicação
Navegue até o aplicativo implantado em seu navegador da Web. Você pode seguir um link do portal do Azure. Vá para a página Visão geral e selecione Domínio padrão. Se vir uma página de aplicação predefinida, aguarde um minuto e atualize o navegador.
O código de exemplo Python está a executar um contêiner Linux no App Service usando uma imagem predefinida.
Parabéns! Você implantou seu aplicativo Python no Serviço de Aplicativo.
Tem problemas? Consulte primeiro o Guia de solução de problemas. Se isso não ajudar, informe-nos.
Transmitir registos
O Serviço de Aplicativo do Azure captura toda a saída de mensagens para o console para ajudá-lo a diagnosticar problemas com seu aplicativo. Os aplicativos de exemplo incluem print() instruções para demonstrar esse recurso.
@app.route('/')
def index():
print('Request for index page received')
return render_template('index.html')
@app.route('/favicon.ico')
def favicon():
return send_from_directory(os.path.join(app.root_path, 'static'),
'favicon.ico', mimetype='image/vnd.microsoft.icon')
@app.route('/hello', methods=['POST'])
def hello():
name = request.form.get('name')
if name:
print('Request for hello page received with name=%s' % name)
return render_template('hello.html', name = name)
else:
print('Request for hello page received with no name or blank name -- redirecting')
return redirect(url_for('index'))
Você pode revisar o conteúdo dos logs de diagnóstico do Serviço de Aplicativo usando a CLI do Azure, o VS Code ou o portal do Azure.
Primeiro, você precisa configurar o Serviço de Aplicativo do Azure para gerar logs para o sistema de arquivos do Serviço de Aplicativo usando o comando az webapp log config .
az webapp log config \
--web-server-logging filesystem \
--name $APP_SERVICE_NAME \
--resource-group $RESOURCE_GROUP_NAME
Para ver as logs em tempo real, use o comando az webapp log tail.
az webapp log tail \
--name $APP_SERVICE_NAME \
--resource-group $RESOURCE_GROUP_NAME
Atualize a página inicial no aplicativo ou tente outras solicitações para gerar algumas mensagens de log. A saída deve ser semelhante à seguinte.
Starting Live Log Stream ---
2021-12-23T02:15:52.740703322Z Request for index page received
2021-12-23T02:15:52.740740222Z 169.254.130.1 - - [23/Dec/2021:02:15:52 +0000] "GET / HTTP/1.1" 200 1360 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/hello" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
2021-12-23T02:15:52.841043070Z 169.254.130.1 - - [23/Dec/2021:02:15:52 +0000] "GET /static/bootstrap/css/bootstrap.min.css HTTP/1.1" 200 0 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
2021-12-23T02:15:52.884541951Z 169.254.130.1 - - [23/Dec/2021:02:15:52 +0000] "GET /static/images/azure-icon.svg HTTP/1.1" 200 0 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
2021-12-23T02:15:53.043211176Z 169.254.130.1 - - [23/Dec/2021:02:15:53 +0000] "GET /favicon.ico HTTP/1.1" 404 232 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
2021-12-23T02:16:01.304306845Z Request for hello page received with name=David
2021-12-23T02:16:01.304335945Z 169.254.130.1 - - [23/Dec/2021:02:16:01 +0000] "POST /hello HTTP/1.1" 200 695 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
2021-12-23T02:16:01.398399251Z 169.254.130.1 - - [23/Dec/2021:02:16:01 +0000] "GET /static/bootstrap/css/bootstrap.min.css HTTP/1.1" 304 0 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/hello" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
2021-12-23T02:16:01.430740060Z 169.254.130.1 - - [23/Dec/2021:02:16:01 +0000] "GET /static/images/azure-icon.svg HTTP/1.1" 304 0 "https://msdocs-python-webapp-quickstart-123.azurewebsites.net/hello" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0"
Tem problemas? Consulte primeiro o Guia de solução de problemas. Se isso não ajudar, informe-nos.
Limpar recursos
Quando terminar o aplicativo de exemplo, você poderá remover todos os recursos do aplicativo do Azure. Remover o grupo de recursos garante que você não incorra em cobranças extras e ajuda a manter sua assinatura do Azure organizada. A remoção do grupo de recursos também remove todos os recursos do grupo de recursos e é a maneira mais rápida de remover todos os recursos do Azure para seu aplicativo.
Exclua o grupo de recursos usando o comando az group delete .
az group delete \
--name msdocs-python-webapp-quickstart \
--no-wait
O --no-wait argumento permite que o comando retorne antes que a operação seja concluída.
Tem problemas? Deixe-nos saber.