Google App Engine vous permet de créer et d'exécuter vos propres applications personnalisées sur les serveurs de Google. Les applications App Engine sont faciles à créer et à gérer. Grâce à leur caractère évolutif, elles s'adaptent au gré de vos besoins en termes de trafic et de stockage des données. Il vous suffit d'importer le code source de votre application pour qu'elle soit prête à l'emploi. Si vous débutez dans le développement pour App Engine, consultez le guide de démarrage rapide App Engine pour Python ou Node.js avant de continuer.
Vous pouvez utiliser Earth Engine et App Engine conjointement pour créer des applications géospatiales évolutives. En règle générale, votre code App Engine inclut la bibliothèque cliente Python Earth Engine et envoie des requêtes au backend Earth Engine à l'aide d'un compte de service. Cela présente un avantage, car n'importe qui peut utiliser votre application sans se connecter ni être un utilisateur Earth Engine enregistré. Notez que les limites d'utilisation standards d'Earth Engine s'appliquent à chaque compte de service.
Une autre approche de développement consiste à utiliser une authentification côté client au lieu d'un compte de service. Avec cette approche, les visiteurs de votre application doivent être enregistrés sur Earth Engine et se connecter. L'avantage de cette approche est que les requêtes envoyées à Earth Engine sont effectuées à l'aide des identifiants de l'utilisateur final. Vous êtes donc moins susceptible d'atteindre les limites d'utilisation. Le problème est que vos utilisateurs doivent s'inscrire à Earth Engine et se connecter avant d'utiliser l'application.
Le répertoire des démonstrations App Engine Earth Engine sur GitHub contient un ensemble d'exemples utiles d'App Engine. Consultez la page Exemples d'applications pour obtenir une brève description de chaque exemple. Ce document explique comment configurer et déployer les exemples ou les applications personnalisées que vous créez.
Déployer des applications App Engine avec Earth Engine
Les instructions suivantes expliquent comment déployer les applications de démonstration. Les instructions Python sont destinées à Mac OS et Linux. Si vous utilisez Python sur Windows, essayez ceci.
Activer l'API Earth Engine dans votre projet Google Cloud
Créez ou sélectionnez un projet Google Cloud et activez l'API Earth Engine en suivant ces instructions.
Configurer les identifiants
Compte de service
Un compte de service peut être utilisé pour autoriser les requêtes envoyées à Earth Engine au nom de l'utilisateur de votre application. Le fichier config.py
contient un code d'authentification à l'aide de l'adresse e-mail du compte de service et d'un fichier de clé privée. Pour configurer l'authentification avec un compte de service, suivez ces instructions pour créer le compte de service et le fichier de clé privée. Nommez le fichier de clé .private-key.json
et déplacez-le dans le répertoire de votre projet.
Python
Si vous ne l'avez pas déjà fait, commencez par configurer l'API Earth Engine pour Python. Testez le compte de service en suivant ces instructions.
Si le test aboutit, mettez à jour config.py
(ou un fichier équivalent dans votre code source) avec l'adresse e-mail de votre compte de service. (Le chemin d'accès au fichier de clé ne doit pas changer, car il se trouve dans le répertoire de votre projet.)
Node.js
Installez les dépendances du projet en exécutant npm install
. L'API Node.js Earth Engine et toutes les autres dépendances seront copiées dans un dossier ./node_modules
du répertoire de votre projet. Si l'installation échoue, vérifiez qu'une version récente de Node.js est installée.
const ee = require('@google/earthengine'); ee.data.authenticateViaPrivateKey('.private-key.json'); ee.initialize();
ID client OAuth 2.0
Si vous souhaitez que les utilisateurs s'authentifient en tant qu'eux-mêmes (plutôt qu'à l'aide d'un compte de service), vous devez configurer un ID client OAuth à partir de votre projet Cloud. Pour ce faire, procédez comme suit :
- Configurez un ID client en suivant ces instructions.
- Mettez à jour
static/script.js
(ou un fichier équivalent dans votre code source) pour utiliser votre ID client. - Assurez-vous que
ee_api_js.js
est disponible dans le répertoire/static/
(ou équivalent). Vous pouvez le télécharger directement depuis GitHub, l' installer depuis npm ou, si vous avez déjà cloné l'intégralité du dépôt de l'API EE, le copier depuisearthengine-api/javascript/build
sur votre système de fichiers local.
Configurer l'environnement de développement local
Python
Suivez les instructions de chaque répertoire d'exemple sur GitHub pour télécharger et compiler le projet. Si un fichier build.sh
est présent, exécutez-le à partir du dossier racine de votre application avec la commande suivante:
./build.sh
Le script de configuration télécharge les dépendances et installe les outils de ligne de commande Google, s'ils ne sont pas déjà présents sur votre système. L'API Python Earth Engine et ses dépendances seront copiées dans un dossier ./lib
du répertoire de votre projet.
Vérifiez que les outils de ligne de commande App Engine sont disponibles en exécutant la commande suivante:
dev_appserver.py
Si la commande n'est pas trouvée, essayez de télécharger et d'installer manuellement le SDK Google App Engine pour Python. Si la commande est disponible, elle doit échouer avec "error: too few arguments".
Node.js
Aucune configuration n'est requise.
Exécuter localement
Une fois votre compte de service enregistré pour accéder à Earth Engine, vous pouvez l'utiliser pour vous authentifier (voir config.py
) lorsque vous testez les exemples. Essayez d'abord de tester les exemples en local en accédant au répertoire de votre projet et en exécutant la commande suivante:
Python
dev_appserver.py .
Node.js
npm install npm start
Accédez à http://localhost:8080 dans votre navigateur pour voir l'application exécutée sur un serveur local. Toutes les modifications que vous apportez (et enregistrez) sont automatiquement détectées lorsque vous actualisez la page.