Usar o servidor de desenvolvimento local

A CLI Google Cloud inclui um servidor de desenvolvimento local (dev_appserver.py). Pode usar o servidor de desenvolvimento local para simular a execução da sua aplicação do App Engine em produção, bem como usá-lo para aceder aos serviços agrupados legados do App Engine. O ambiente simulado aplica algumas restrições da caixa de areia, como funções do sistema restritas e importações de módulos de linguagem de tempo de execução, mas não outras, como limites de tempo ou quotas de pedidos.

O servidor de desenvolvimento local também simula os serviços fornecidos pelas bibliotecas no SDK do App Engine, incluindo o armazenamento de dados, a cache de memória e as filas de tarefas, executando as respetivas tarefas localmente. Quando a sua aplicação está a ser executada no servidor de desenvolvimento, continua a poder fazer chamadas de API remotas para a infraestrutura de produção através dos pontos finais HTTP da API Google.

Configure o servidor de desenvolvimento local

Para executar a ferramenta de servidor de desenvolvimento local, tem de configurar o seguinte:

  1. Verifique se instalou um intérprete do Python 3 que seja compatível com a versão do Python exigida pela CLI gcloud.
  2. Verifique se instalou o componente da CLI do Google Cloud que inclui a extensão do App Engine para Python 3 (app-engine-python):

    gcloud components list
    

    Se o componente app-engine-python não estiver instalado, execute o seguinte comando:

    gcloud components install app-engine-python
    
  3. Localize o caminho de instalação do SDK do Google Cloud executando o seguinte comando:

    gcloud info
    

    O comando devolve o diretório raiz onde instalou o SDK Cloud da Google, por exemplo:

    Installation Root: [/Users/myname/google-cloud-sdk]

  4. Localize a ferramenta dev_appserver.py na pasta /bin/ onde instalou a CLI do Google Cloud, por exemplo:

    CLOUD_SDK_ROOT/bin/dev_appserver.py
    
  5. Anote o caminho para o ficheiro dev_appserver.py para mais tarde.

Execute o servidor de desenvolvimento local

Depois de configurar o servidor de desenvolvimento local e criar o ficheiro de configuração app.yaml para a sua app, pode usar o comando dev_appserver.py para executar a app localmente.

Para iniciar o servidor de desenvolvimento local:

  • O servidor de programação local está agora em execução e a ouvir pedidos. Pode visitar http://localhost:8080/ no seu navegador de Internet para ver a app em ação.

    Se especificou uma porta personalizada com a opção --port, lembre-se de abrir o navegador nessa porta.

  • Para parar o servidor local a partir da linha de comandos, prima o seguinte:

    • macOS ou Linux: Control+C
    • Windows: Control+Break

    Especifique os IDs das aplicações

    Detetar o ambiente de tempo de execução da aplicação

    Use o serviço de correio

    O servidor de desenvolvimento local pode enviar emails para chamadas ao serviço de email do App Engine através de um servidor SMTP ou de uma instalação local do Sendmail.

    Usar o SMTP

    Para ativar o suporte de correio com um servidor SMTP, invoque dev_appserver.py da seguinte forma:

    python3 [CLOUD_SDK_ROOT]/bin/dev_appserver.py --smtp_host=smtp.example.com --smtp_port=25 \
        --smtp_user=ajohnson --smtp_password=k1tt3ns [PATH_TO_YOUR_APP]
    

    onde define as opções --smtp_host, --smtp_port, --smtp_user e --smtp_password com os seus próprios valores.

    Usar o Sendmail

    Para ativar o apoio técnico por email com o Sendmail, invoque dev_appserver.py da seguinte forma:

    python3 [CLOUD_SDK_ROOT]/bin/dev_appserver.py --enable_sendmail=yes [PATH_TO_YOUR_APP]
    

    O servidor local usa o comando sendmail para enviar mensagens de email com a configuração predefinida da sua instalação.

    Use o serviço de obtenção de URL

    Quando a sua aplicação usa a API URL Fetch para fazer um pedido HTTP, o servidor de desenvolvimento local faz o pedido diretamente a partir do seu computador. O comportamento da obtenção de URLs no servidor local pode diferir do App Engine de produção se usar um servidor proxy para aceder a Websites.

    Use o serviço Users

    O App Engine fornece um serviço de utilizadores para simplificar a autenticação e a autorização da sua aplicação. O servidor de desenvolvimento local simula o comportamento das Contas Google com as suas próprias páginas de início e fim de sessão.

    Argumentos da linha de comandos

    Para ver as opções de comando do servidor de desenvolvimento local, consulte o artigo Opções do servidor de desenvolvimento local.