Implementar uma aplicação web Python para um VM no Azure Stack Hub

Pode criar um VM para hospedar a sua aplicação web Python no Azure Stack Hub. Neste artigo, configura um servidor, configura o servidor para hospedar a sua aplicação web Python e, em seguida, implementar a aplicação para Azure Stack Hub.

Este artigo utiliza o Python 3.x a correr Flask num ambiente virtual num servidor Nginx. Utilize o Ubuntu Server 18.04 LTS do Azure Stack Hub Marketplace.

Criar uma VM

  1. Confule o seu VM no Azure Stack Hub seguindo as instruções em Implementar um Linux VM para hospedar uma aplicação web no Azure Stack Hub. Utilize o Ubuntu Server 18.04 LTS do Azure Stack Hub Marketplace.

  2. No painel de rede VM, certifique-se de que as seguintes portas estão acessíveis:

    Porta Protocolo Description
    80 HTTP O Protocolo de Transferência de Hipertextos (HTTP) é o protocolo utilizado para entregar páginas web a partir de servidores. Os clientes conectam-se via HTTP com um nome DNS ou endereço IP.
    443 HTTPS Hypertext Transfer Protocol Secure (HTTPS) é uma versão segura do HTTP que requer um certificado de segurança e permite a transmissão encriptada de informações.
    22 SSH Secure Shell (SSH) é um protocolo de rede encriptado para comunicações seguras. Utilize esta ligação com um cliente SSH para configurar o VM e implementar a aplicação.
    3389 RDP Opcional. O Protocolo de Ambiente de Trabalho Remoto (RDP) permite que uma ligação remota de ambiente de trabalho utilize uma interface de utilizador gráfica na sua máquina.
    5000, 8000 Personalizado As portas que são utilizadas pela estrutura web flask em desenvolvimento. Para um servidor de produção, você encaminha o seu tráfego através de 80 e 443.
  3. No painel de visão geral, selecione configurar com o nome DNS.

  4. Selecione estática e, em seguida, nomeie a máquina de modo a que tenha um nome DNS como: .

Instalar o Python

  1. Ligação ao seu VM utilizando o seu cliente SSH. Para obter instruções, consulte Ligação via SSH com PuTTy.

  2. Na sua batida no seu VM, insira o seguinte comando:

    sudo apt-get update
    sudo apt-get -y install python3 python3-dev
    sudo apt install python3-pip
    
  3. Valide a sua instalação. Enquanto ainda estiver ligado ao seu VM na sua sessão de SSH, insira o seguinte comando para abrir Python e anote o número da versão. Em seguida, quit() digite para sair do Python REPL.

    python3
    quit()
    
  4. Instale o Nginx,um servidor web leve. Enquanto ainda estiver ligado ao seu VM na sua sessão de SSH, insira o seguinte comando:

    sudo apt-get -y install nginx
    
  5. Instale o Git, um sistema de controlo de versão amplamente distribuído e gestão de códigos fonte (SCM). Enquanto ainda estiver ligado ao seu VM na sua sessão de SSH, insira o seguinte comando:

    sudo apt-get -y install git
    

Implementar e executar a aplicação

  1. Instale o seu repositório git no VM. Enquanto ainda estiver ligado ao seu VM na sua sessão de SSH, insira os seguintes comandos:

       git clone https://github.com/Azure-Samples/azure-stack-hub-flask-hello-world.git
    
       cd azure-stack-hub-flask-hello-world
    
  2. Enquanto ainda estiver ligado ao seu VM na sua sessão de SSH, insira os seguintes comandos para instalar as dependências. Instale o Flask utilizando o apt e, em seguida, pip para carregar os módulos de requirements.txt .

    sudo apt install python3-flask
    pip3 install -r requirements.txt
    
    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    
  3. Vá para o seu novo servidor. Devia ver a sua aplicação web em execução.

    <yourmachine>.<local>.cloudapp.azurestack.contoso.com:5000
    

Atualize o seu servidor

  1. Ligação ao seu VM na sua sessão de SSH. Pare o servidor digitando Ctrl+C.

  2. Introduza os seguintes comandos:

    cd azure-stack-hub-flask-hello-world
    git pull
    
  3. Ativar o ambiente virtual e iniciar a aplicação:

    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    

Passos seguintes