Como especificar dependências

As dependências dos aplicativos Python são declaradas em um arquivo requirements.txt. Exemplo:

Flask==MAJOR.MINOR.PATCH
google-cloud-storage

Substitua MAJOR, MINOR e PATCH pelos números de versão do Flask desejados.

Use qualquer pacote Python compatível com Linux no ambiente flexível do App Engine, inclusive pacotes que exijam extensões nativas (C).

O ambiente de execução do Python instala automaticamente todas as dependências declaradas em requirements.txt durante a implantação.

Como instalar dependências localmente

Durante o desenvolvimento e o teste local do aplicativo, recomendamos que você use o venv para isolar as dependências do aplicativo dos pacotes do sistema. Isso também garante que as dependências terão a mesma versão na máquina local e no aplicativo implantado.

Para usar o venv na instalação de dependências, conclua as etapas a seguir:

Mac OS/Linux

  1. Crie um ambiente Python isolado:
    python3 -m venv env
    source env/bin/activate
  2. Se você não estiver no diretório que contém o código de amostra, navegue até o diretório que contém o código de amostra hello_world. Em seguida, instale as dependências:
    cd YOUR_SAMPLE_CODE_DIR
    pip install -r requirements.txt

Windows

Use o PowerShell para executar os pacotes Python.

  1. Localize a instalação do PowerShell.
  2. Clique com o botão direito do mouse no atalho do PowerShell e inicie-o como administrador.
  3. Crie um ambiente Python isolado.
    python -m venv env
    .\env\Scripts\activate
  4. Acesse o diretório do projeto e instale as dependências: Se você não estiver no diretório que contém o código de amostra, navegue até o diretório que contém o código de amostra hello_world. Em seguida, instale as dependências:
    cd YOUR_SAMPLE_CODE_DIR
    pip install -r requirements.txt

Isso garante que, ao executar o aplicativo localmente, apenas as dependências declaradas no arquivo requirements.txt estejam disponíveis. As dependências instaladas pelo App Engine durante a implantação são baseadas no conteúdo do arquivo requirements.txt, não no conteúdo do diretório env/.

Como instalar um framework da Web

Você precisará usar uma estrutura da Web para permitir que seu aplicativo disponibilize solicitações da Web. É possível usar qualquer biblioteca da Web do Python, inclusive estas:

Para usar um framework web específico, basta adicioná-lo a seu requirements.txt:

Flask==MAJOR.MINOR.PATCH

Como instalar um servidor WSGI

Algumas bibliotecas da Web têm servidores WSGI integrados. Porém, poucos deles são indicados para disponibilizar o tráfego de produção. A maioria dos aplicativos da Web usa um servidor WSGI independente, como Gunicorn, uWSGI ou Waitress. Para mais informações sobre como instalar, configurar e usar um servidor WSGI, consulte inicialização do aplicativo.

Como instalar as bibliotecas de cliente do Cloud

As bibliotecas de cliente do Cloud para Python dão acesso a serviços do Google Cloud que reduz significativamente o código boilerplate que você precisa escrever. A biblioteca fornece abstrações detalhadas de APIs para facilitar a compreensão. Ela usa as expressões do Python, funciona bem com a biblioteca padrão e se integra melhor à sua base de código.

Por exemplo, é possível instalar a biblioteca de cliente correspondente do Python no Datastore ou Cloud Storage para integrar esses serviços ao app.

Para instalar a biblioteca de cliente do Python para o Cloud Datastore, faça o seguinte:

  1. Instale a biblioteca de cliente localmente usando pip:

    pip install google-cloud-datastore

  2. Configure a autenticação. É possível configurar as bibliotecas de cliente do Cloud para Python para processar autenticações automaticamente. A biblioteca de cliente gerencia autenticações automaticamente de modo local e também usando a Google Cloud CLI.

    gcloud auth login
    
  3. Use a referência das bibliotecas de cliente do Datastore para implementar o suporte ao serviço do Cloud Datastore no seu app.

Consulte uma lista completa de todas as bibliotecas de cliente do Cloud para Python para os serviços suportados do Google Cloud em APIs e bibliotecas do Python.