Notice: Over the next few months, we're reorganizing the App Engine documentation site to make it easier to find content and better align with the rest of Google Cloud products. The same content will be available, but the navigation will now match the rest of the Cloud products.

Node.js 16 is now generally available.

Deploying Your Web Service

Region ID

The REGION_ID is an abbreviated code that Google assigns based on the region you select when you create your app. The code does not correspond to a country or province, even though some region IDs may appear similar to commonly used country and province codes. For apps created after February 2020, REGION_ID.r is included in App Engine URLs. For existing apps created before this date, the region ID is optional in the URL.

Learn more about region IDs.

This section of the guide shows how to use the gcloud CLI to deploy your Node.js web service on App Engine. To learn more about the Node.js runtime environment, see Node.js Runtime Environment.

Before you begin

  1. Create a Cloud project with an App Engine app.
  2. Write a Node.js web server ready to deploy on App Engine.
  3. Install Google Cloud CLI, which provides the gcloud command-line tool. Ensure gcloud is configured to use the Google Cloud project you want to deploy to.

Key points

  • Use gcloud app deploy and gcloud app browse to deploy and view your service.

Deploying your service

In your my-nodejs-service folder, where the app.yaml file is located, run the following command in your terminal:

gcloud app deploy

Your source files are then uploaded to Google Cloud Storage. Cloud Build builds your app and deploys it to App Engine.

For information about other ways to build and deploy your app, see Testing and deploying your app.

Node.js modules are installed in the cloud as listed in your package.json and package-lock.json files and your service is started by using npm start.

Deploying multiple services

You can add multiple services in your project by creating an app.yaml file for each service. Include the service attribute in each app.yaml file to specify the name of the service. To learn more about structuring your app using multiple services, see Structuring Web Services in App Engine.

To deploy multiple services, follow these instructions. Each deployed service will have its own assigned URL.

Viewing your service

To quickly launch your browser and access your web service at https://PROJECT_ID.REGION_ID.r.appspot.com, use the following command:

gcloud app browse

Services and versions

You've just created and deployed a service on App Engine. You can specify the name of your service in the app.yaml file. If the name is omitted, it is treated as default. The first service you deploy must be the default service.

You can update your service at any time by running the gcloud app deploy command again. Each time you deploy, a new version is created and traffic is automatically routed to the latest version.

To confirm that your service has been created and a version has been deployed:

  1. View your App Engine services in the console:

    View services

    You should see one service listed, named default. The default service is publicly accessible at the following URL:

    https://PROJECT_ID.REGION_ID.r.appspot.com

  2. View your versions:

    View versions

    You should see one timestamped version listed, corresponding to your deployment.

To learn how to send requests to specific services and versions, see How Requests are Routed.

Next steps

Now that you have a Node.js server running on App Engine, learn how to make updates to your web service.