Implantar um aplicativo Web Python em uma VM no Azure Stack Hub

Você pode criar uma VM para hospedar seu aplicativo Web Python no Azure Stack Hub. Neste artigo, você configura um servidor, configura o servidor para hospedar seu aplicativo Web Python e, em seguida, implanta o aplicativo no Azure Stack Hub.

Este artigo usa o Python 3.x executando o Flask em um ambiente virtual em um servidor Nginx. Use o Ubuntu Server 18.04 LTS do Azure Stack Hub Marketplace.

Criar uma VM

  1. Configure sua VM no Azure Stack Hub seguindo as instruções em Implantar uma VM do Linux para hospedar um aplicativo Web no Azure Stack Hub. Use o Ubuntu Server 18.04 LTS do Azure Stack Hub Marketplace.

  2. No painel de rede da VM, verifique se as seguintes portas estão acessíveis:

    Porta Protocolo Descrição
    80 HTTP HTTP (Protocolo de Transferência de Hipertexto) é o protocolo usado para fornecer páginas da Web de servidores. Os clientes se conectam via HTTP com um nome DNS ou endereço IP.
    443 HTTPS O HTTPS (Hypertext Transfer Protocol Secure) é uma versão segura do HTTP que requer um certificado de segurança e permite a transmissão criptografada de informações.
    22 SSH O Secure Shell (SSH) é um protocolo de rede criptografado para comunicações seguras. Você usa essa conexão com um cliente SSH para configurar a VM e implantar o aplicativo.
    3389 RDP Opcional. O RDP (Protocolo de Área de Trabalho Remota) permite que uma conexão de área de trabalho remota use uma interface gráfica do usuário em seu computador.
    5000, 8000 Personalizado As portas usadas pela estrutura da Web do Flask em desenvolvimento. Para um servidor de produção, você roteia seu tráfego por 80 e 443.
  3. No painel Visão geral , selecione configurar em Nome DNS.

  4. Selecione estático e nomeie o computador para que você tenha um nome DNS, como: <yourmachine>.<local>.cloudapp.azurestack.contoso.com.

Instalar o Python

  1. Conecte-se à VM usando seu cliente SSH. Para obter instruções, consulte Conectar via SSH com PuTTy.

  2. No prompt bash em sua 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 instalação. Enquanto você ainda estiver conectado à VM na sessão SSH, insira o comando a seguir para abrir o Python e anote o número da versão. Em seguida, digite quit() para sair do REPL do Python.

    python3
    quit()
    
  4. Instale o Nginx, um servidor Web leve. Enquanto você ainda estiver conectado à VM na sessão SSH, insira o seguinte comando:

    sudo apt-get -y install nginx
    
  5. Instale o Git, um sistema SCM (controle de versão e gerenciamento de código-fonte) amplamente distribuído. Enquanto você ainda estiver conectado à VM na sessão SSH, insira o seguinte comando:

    sudo apt-get -y install git
    

Implantar e executar o aplicativo

  1. Configure seu repositório Git na VM. Enquanto você ainda estiver conectado à VM na sessão 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 você ainda estiver conectado à VM na sessão SSH, insira os comandos a seguir para instalar as dependências. Instale o Flask usando 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 novo servidor. Você deverá ver seu aplicativo Web em execução.

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

Atualizar seu servidor

  1. Conecte-se à sua VM em sua sessão SSH. Interrompa o servidor digitando Ctrl+C.

  2. Digite os seguintes comandos:

    cd azure-stack-hub-flask-hello-world
    git pull
    
  3. Ative o ambiente virtual e inicie o aplicativo:

    export FLASK_APP=application.py
    flask run -h 0.0.0.0
    

Próximas etapas