Configurar seu ambiente de desenvolvimento Python - AWS Elastic Beanstalk

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Configurar seu ambiente de desenvolvimento Python

Configure um ambiente de desenvolvimento Python para testar a aplicação localmente antes de implantá-lo no AWS Elastic Beanstalk. Este tópico descreve as etapas de configuração do ambiente de desenvolvimento e inclui links para páginas de instalação de ferramentas úteis.

Para seguir os procedimentos neste manual, você precisa de um terminal de linha de comando ou de um shell para executar os comandos. Nas listagens, os comandos são mostrados precedidos por um símbolo de prompt ($) e pelo nome do diretório atual, quando apropriado.

~/eb-project$ this is a command this is output

No Linux e no macOS, você pode usar seu gerenciador de pacotes e de shell preferido. No Windows, você pode instalar o Windows Subsystem for Linux para obter uma versão integrada ao Windows do Ubuntu e do Bash.

Para ver as etapas de configuração comuns e as ferramentas que se aplicam a todas as linguagens, consulte Configurar sua máquina de desenvolvimento para uso com o Elastic Beanstalk.

Pré-requisitos

Para todas as aplicações Python que você implantará com o Elastic Beanstalk, estes pré-requisitos são comuns:

  1. Uma versão Python correspondente à versão da plataforma Python do Elastic Beanstalk que a aplicação usará.

  2. O utilitário pip, que corresponde à sua versão do Python. Ele é usado para instalar e listar as dependências de seu projeto, dessa forma, o Elastic Beanstalk sabe como configurar o ambiente da aplicação.

  3. A interface de linha de AWS Elastic Beanstalk comando (EB CLI). Ele é usado para inicializar a aplicação com os arquivos necessários para a implantação com o Elastic Beanstalk.

  4. Uma instalação ssh de trabalho. Ela é usada para conectar-se às suas instâncias em execução quando você precisa examinar ou depurar uma implantação.

  5. O pacote virtualenv. Ele é usado para criar um ambiente utilizado para desenvolver e testar a aplicação de forma que o ambiente possa ser replicado pelo Elastic Beanstalk sem instalar pacotes extras que não são necessários para a aplicação. Instalar esse pacote com o seguinte comando:

    $ pip install virtualenv

Para obter instruções sobre como instalar o Python, o pip e a CLI do EB, consulte Instalar a EB CLI.

Usar um ambiente virtual

Quando você tiver os pré-requisitos instalados, configure um ambiente virtual com virtualenv para instalar as dependências de seu aplicativo. Usando um ambiente virtual, você pode distinguir exatamente quais pacotes são necessários ao seu aplicativo para que eles sejam instalados nas instâncias do EC2 que executam seu aplicativo.

Para configurar um ambiente virtual
  1. Abra uma janela de linha de comando e digite:

    $ virtualenv /tmp/eb_python_app

    Substitua eb_python_app por um nome que faça sentido para a aplicação (usar o nome da aplicação é uma boa ideia). O comando virtualenv cria um ambiente virtual para você no diretório especificado e imprime os resultados de suas ações:

    Running virtualenv with interpreter /usr/bin/python New python executable in /tmp/eb_python_app/bin/python3.7 Also creating executable in /tmp/eb_python_app/bin/python Installing setuptools, pip...done.
  2. Quando seu ambiente virtual estiver pronto, inicie-o executando o script activate localizado no diretório bin do ambiente. Por exemplo, para iniciar o ambiente eb_python_app criado na etapa anterior, você digita:

    $ source /tmp/eb_python_app/bin/activate

    O ambiente virtual imprime o nome dele (por exemplo: (eb_python_app)) no início de cada prompt de comando, lembrando que você está em um ambiente Python virtual.

  3. Para parar de usar seu ambiente virtual e voltar ao interpretador Python padrão do sistema com todas as bibliotecas instaladas, execute o comando deactivate.

    (eb_python_app) $ deactivate
nota

Após a criação, você poderá reiniciar o ambiente virtual a qualquer momento executando o script activate novamente.

Configurar um projeto Python para o Elastic Beanstalk

É possível usar a CLI do Elastic Beanstalk para preparar as aplicações Python para implantação com o Elastic Beanstalk.

Como configurar uma aplicação Python para implantação com o Elastic Beanstalk
  1. Em seu ambiente virtual, volte para a parte superior da árvore de diretórios do projeto (python_eb_app) e digite:

    pip freeze >requirements.txt

    Este comando copia os nomes e versões dos pacotes que estão instalados em seu ambiente virtual para requirements.txt, Por exemplo, se o pacote PyYAML, versão 3.11 estiver instalado em seu ambiente virtual, o arquivo conterá a linha:

    PyYAML==3.11

    Dessa forma, o Elastic Beanstalk pode replicar o ambiente Python da aplicação usando os mesmos pacotes e as mesmas versões que você usou para desenvolver e testar a aplicação.

  2. Configure o repositório da EB CLI com o comando eb init. Siga os prompts para escolher a região, a plataforma e outras opções. Para obter instruções detalhadas, consulte Gerenciar ambientes do Elastic Beanstalk com a CLI do EB.

Por padrão, o Elastic Beanstalk procura um arquivo chamado application.py para iniciar a aplicação. Se ele não existir no projeto Python que você criou, alguns ajustes no ambiente do seu aplicativo serão necessários. Você também precisará definir variáveis de ambiente para que os módulos do aplicativo possam ser carregados. Consulte Usar a plataforma Python do Elastic Beanstalk Para mais informações.