Google Cloud Deployment

The following are the instructions to deploy the angular-fullstack app to Google Cloud App Engine Standard Environment

Prequsites

1. Google Cloud SDK

Download and install Google Cloud SDK

2. Create GCP Project

  gcloud projects create [PROJECT_ID]

[PROJECT_ID] ID for the project you want to create.

3. Enable Billing

You need to enable billing for your project before you begin using App Engine

  gcloud alpha billing projects link my-project \ 
      --billing-account 0X0X0X-0X0X0X-0X0X0X

gcloud alpha billing projects link

4. Create a MongoDB database

Create a MongoDB instance and obtain the uri and credentials. There are multiple options for creating a new MongoDB database.

Deployment Setup

1. Set Node / NPM versions

GCloud App Engine supports only the newest version of Node.js 8
    "engines": {
    "node": ">=8.0",
    "npm": "^5.1.1"
  },

2. Create Application configuration file (app.yaml)

A Node.js app in App Engine is configured through a file named app.yaml, that contains runtime, handlers, 
scaling, and other general settings including environment variables.

2.1 create a 'app.yaml' file with the following contents
    env: standard 

    runtime: nodejs8

    env_variables:
      MONGODB_URI:  "mongodb://<dbuser  :<dbpassword  @<environment_URI/deployment_name"
2.2 Add app.yaml to .gitignore

Deployment Steps

1. Build the app

    gulp build

2. Copy app.yaml to dist

    cp app.yaml dist

3. Change to build directory

    cd dist

4. Deploy

    gcloud app deploy

Last updated