Skip to content

docs(deployment): instructions to deploy on gcloud app engine standard edition #2742

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 13 commits into from
Jul 8, 2018
64 changes: 64 additions & 0 deletions docs/content/deployment/gcloud-deployment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@

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](https://cloud.google.com/sdk/)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove leading spaces so this text doesn't get put into a code block

## 2. Create GCP Project
```bash
gcloud projects create PROJECT_ID
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd mention that PROJECT_ID needs to be replaced with something else

```
## 3. Enable Billing
```bash
gcloud alpha billing projects link my-project \
--billing-account 0X0X0X-0X0X0X-0X0X0X
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Explain where this code comes from, and perhaps post a direct link to the web page for enabling billing

```
## 4. Create a MongoDB database
Create a MongoDB instance and obtain the uri and credentials
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps add a link for creating a Mongo server


# Deployment Setup
## 1. Set Node / NPM versions
GCloud App Engine supports only the newest version of Node.js 8
```javascript
"engines": {
"node": " =8.0",
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

" =8.0" should probably be ">=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

```javascript
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is YAML, not javascript


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
```bash
gulp build
```
## 2. Copy app.yaml to dist
```bash
copy app.yaml dist
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

bash copy command would be cp

```
## 3. Change to build directory
```bash
cd dist
```
## 4. Deploy
```bash
gcloud app deploy
```
2 changes: 2 additions & 0 deletions docs/content/deployment/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,3 +22,5 @@ $ cd myproj
5. ```
$ NODE_ENV=production node ./server
```

## [Gcloud App Engine (Standard Environment)](gcloud-deployment.md)