Deploy App to Production Server¶
Last Updated: May 2020
In this tutorial you will learn how to install the Google Earth Tethys app in a production environment. If you don't have access to a machine with a production installation of Tethys Platform, we recommend you create a new Virtual Machine and install Tethys on it. Refer to Production Installation Guide.
Topics covered in this tutorial include:
Installing Apps in Production
Cloning from GitHub
1. Copy Key Google Earth Engine to Server¶
You will need to copy the Google Earth Engine service account key file you created earlier to the server (see: 1. Create Service Account Key). If you have SSH access to the machine, this is most easily done using scp:
scp </path/to/local/file> <username>@<server_host>:</path/on/server>
We recommended that you
scpthe file to the
/tmpdirectory and then move it to
System with key file:
scp </path/to/key.json> <username>@<host>:/tmp/gee_key.json
mv </tmp/key.json> ~/.tethys/
Change the ownership of the file to the
NGINX_USERand restrict it to read-only access:
sudo chown www-data: ~/.tethys/gee_key.json sudo chmod 0444 ~/.tethys/gee_key.json
sudo chown nginx: ~/.tethys/gee_key.json sudo chmod 0444 ~/.tethys/gee_key.json
2. Follow App Installation Guide¶
Use the Installing Apps in Production guide to install the Earth Engine app on the server with the following clarifications:
Download App Source Code: Clone the GitHub repository you setup in the Publish App Code to GitHub tutorial.
Install App: You will be prompted to set values for the
private_key_fileapp settings. You may skip entering the values now and set them via the app settings page later.
Configure Additional App Settings: Navigate to the app settings admin page for the Earth Engine app and verify that the
private_key_filesettings are configured correctly.
Initialize Persistent Stores: This step is not required for the Earth Engine app.
http(s)://<HOST_OF_SERVER>/apps/earth-engine/viewer/ and verify the following:
Load several datasets and ensure the imagery is displayed on the map.
Test the Plot Area of Interest capability.
Upload a boundary shapefile and verify that the imagery is clipped to the extents of that boundary.
If you encounter a 500 error while accessing the Viewer page check the app settings and verify that
private_key_fileare set correctly.
Verify that the service account has been registered to use the Google Earth Engine API.
Check the Tethys log for errors: