Deploy app - Gapminder/dollar-street-framework GitHub Wiki

If you deploying the application at the first times visit this link

First of all deploy "puppeteer"

./deployment/gcp/deploy-puppeteer.sh -m dev -b standalone

Copy EXTERNAL_IP_PUPPETEER and check http://external_ip_puppeteer/healthz.

Should appear {"success":true,"method":"GET"}

Update specific file with certain MODE & NODE

"CLUSTER_PUPPETEER_EXTERNAL_IP": "EXTERNAL_IP_PUPPETEER" & commit

npm run prebuild:client

Deploy app (CMS & DS)

deploy "dev-ds" and "prod-ds" (street will be deployed in a cluster)

./deployment/gcp/deploy-preview.sh -n NODE_ENV -m MODE_ENV -i INSTANCE_MACHINE_TYPE

use INSTANCE_MACHINE_TYPE = 4 for dev and 8 for prod

deploy "prod-clinics", "prod-schools" and other projects (street will be deployed in an instance)

./deployment/gcp/deploy-standalone.sh -n NODE_ENV -m MODE_ENV


Copy EXTERNAL_IP_CMS and check it http://EXTERNAL_IP_CMS /login

Copy EXTERNAL_IP_DS and check it http://EXTERNAL_IP_DS

GCP - VPC network - External IP addresses:

  • change from ephemeral to static IP on CMS instance

Go to https://dash.cloudflare.com

  • select dollarstreet.org
  • find URL for your project and switch IP for CMS to EXTERNAL_IP_CMS and DS to EXTERNAL_IP_DS

For "Prod" needs a purge cache on nginx and cloudflaire

For Nginx: ssh -i .ssh/id_rsa [email protected] service nginx restart

For cloudflaire https://dash.cloudflare.com/400f4ada36f69faad0c59a2168bce97f/dollarstreet.org/caching