O Google App Engine permite criar e executar seus próprios aplicativos personalizados nos servidores do Google. Os aplicativos do App Engine são fáceis de criar, manter e escalonar de acordo com as mudanças necessárias no tráfego e no armazenamento de dados. Basta fazer upload do código-fonte do aplicativo e ele estará pronto para uso. Se você não sabe como desenvolver para o App Engine, confira o guia de início rápido do Python ou do Node.js do App Engine antes de continuar.
O Earth Engine e o App Engine podem ser usados juntos para criar aplicativos geoespaciais escalonáveis. Normalmente, o código do App Engine inclui a biblioteca de cliente do Python do Earth Engine e faz solicitações para o back-end do Earth Engine usando uma conta de serviço. Isso é vantajoso porque permite que qualquer pessoa use seu app sem fazer login ou ser um usuário registrado do Earth Engine. Os limites de uso padrão do Earth Engine se aplicam a cada conta de serviço.
Outra abordagem de desenvolvimento é usar autenticação do lado do cliente em vez de uma conta de serviço. Com essa abordagem, os visitantes do seu aplicativo precisam estar registrados no Earth Engine e fazer login. A vantagem dessa abordagem é que as solicitações para o Earth Engine são feitas usando as credenciais do usuário final, então é menos provável que você atinja os limites de uso. O desafio é que seus usuários precisam se inscrever no Earth Engine e fazer login antes de usar o aplicativo.
O diretório de demonstrações do App Engine Engine Engine no GitHub contém um conjunto de exemplos úteis do App Engine. Consulte a página de apps de exemplo para uma breve descrição de cada exemplo. Este documento fornece instruções sobre como configurar e implantar os exemplos ou apps personalizados que você criar.
Como implantar apps do App Engine com o Earth Engine
As instruções a seguir explicam como implantar os apps de demonstração. As instruções do Python são destinadas ao Mac OS e ao Linux. Se você estiver usando o Python no Windows, tente fazer isso.
Ativar a API Earth Engine no seu projeto do Google Cloud
Crie ou selecione um projeto do Google Cloud e ative a API Earth Engine de acordo com estas instruções.
Configurar credenciais
Conta de serviço
Uma conta de serviço pode ser usada para
autorizar solicitações ao Earth Engine em nome de quem estiver usando seu app. O
arquivo config.py
contém o código de autenticação usando o endereço de e-mail da conta de serviço
e um arquivo de chave privada. Para configurar a autenticação com uma conta de serviço,
siga estas instruções para criar a conta de serviço
e o arquivo de chave privada. Nomeie o arquivo de chave como .private-key.json
e mova-o
para o diretório do projeto.
Python
Configure a API Earth Engine para Python, caso ainda não tenha feito isso. Teste a conta de serviço de acordo com estas instruções.
Se o teste for bem-sucedido, atualize config.py
(ou um arquivo equivalente no código-fonte) com o endereço de e-mail da sua conta de serviço. O caminho para o arquivo de chave não muda,
porque ele está no diretório do projeto.
Node.js
Instale as dependências do projeto executando npm install
. A API Node.js do Earth Engine e todas as outras dependências serão copiadas para uma pasta ./node_modules
no diretório do projeto. Se a instalação falhar, verifique se
uma versão recente do Node.js está instalada.
const ee = require('@google/earthengine'); ee.data.authenticateViaPrivateKey('.private-key.json'); ee.initialize();
ID de cliente OAuth 2.0
Se você quiser que os usuários se autentiquem como eles mesmos (em vez de usar uma conta de serviço), configure um ID de cliente OAuth no seu projeto do Cloud. Para fazer isso, siga estas etapas:
- Configure um ID de cliente de acordo com estas instruções.
- Atualize
static/script.js
(ou um arquivo equivalente no código-fonte) para usar o ID do cliente. - Verifique se
ee_api_js.js
está disponível no diretório/static/
ou equivalente. Você pode fazer o download diretamente do GitHub, instalar pelo npm ou, se você já tiver clonado o repositório da API EE, copie-o deearthengine-api/javascript/build
no seu sistema de arquivos local.
Configurar o ambiente de desenvolvimento local
Python
Siga as instruções em cada diretório de exemplo no GitHub para fazer o download e criar o
projeto. Se houver um arquivo build.sh
, execute-o na pasta raiz do aplicativo
com o comando:
./build.sh
O script de configuração vai fazer o download de dependências e instalar ferramentas de linha de comando do Google, se elas ainda não existirem no seu sistema. A API Python do Earth Engine e as dependências dela serão copiadas para uma pasta ./lib
no diretório do projeto.
Para verificar se as ferramentas de linha de comando do App Engine estão disponíveis, execute:
dev_appserver.py
Se o comando não for encontrado, tente fazer o download e a instalação manual do SDK do Google App Engine para Python. Se o comando estiver disponível, ele vai falhar com "error: too few arguments".
Node.js
Não é necessário configurar.
Executar no local
Depois que sua conta de serviço for registrada para acesso ao Earth Engine, ela poderá ser usada para autenticação (consulte config.py
) ao testar os exemplos. Primeiro, teste os exemplos localmente acessando o
diretório do projeto e executando:
Python
dev_appserver.py .
Node.js
npm install npm start
Acesse http://localhost:8080 no navegador para conferir o app em execução em um servidor local. Todas as mudanças feitas (e salvas) serão detectadas automaticamente quando você atualizar a página.