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.

Use the Google Cloud CLI to deploy your web service to App Engine.

Though this initial version of the web service doesn't have Firestore in Datastore mode (Datastore) or Firebase authentication, you can deploy it to App Engine at this stage to test and ensure that it works as expected.

Before you begin

If you have completed all the previous steps in this guide, skip this section. Otherwise, complete one of the following:

  • Start from Building a Python 3 App and complete all the steps leading up to this one.

  • If you already have a Google Cloud project, you can continue by downloading a copy of the web service:

    1. Download the sample application repository using Git:

      git clone

      Alternatively, you can download the sample as a zip file and then extract it.

    2. Navigate to the directory that contains a copy of the files from the previous step:

      cd python-docs-samples/appengine/standard_python3/building-an-app/building-an-app-1

Deploying your service

To deploy your web service, you run the gcloud app deploy command from the root directory of your project, where your app.yaml file is located:

gcloud app deploy

Each time that you deploy your web service, a new version of that app is created in App Engine. During deployment, a container image is created using the Cloud Build service, and then a copy is uploaded to Google Cloud Storage before it is run in App Engine.

For more information about deploying to App Engine, see Testing and Deploying Your App.

Viewing your service

To quickly launch your browser and access your web service at, enter the following command:

gcloud app browse

Managing services and versions

You've just deployed a version of the web service to App Engine. Each time that you deploy a version of your code, that version is created in a service. The initial deployment to App Engine must be created in the default service, but for subsequent deployments, you can specify the name of your service in your app.yaml file.

You can update a service at any time by running the gcloud app deploy command and deploying new versions to that service. Each time that you update a service, traffic is automatically routed to the version last deployed. However, you can include gcloud flags to change the deploy command behavior.

Use the Google Cloud console to manage and view the services and versions that you deploy to App Engine:

For more information about the multi-service design pattern, see An Overview of App Engine. To learn how to send requests to specific services and versions, see Splitting Traffic.

Next steps

Now that you have a Python service running on App Engine, you're ready to learn how to handle data with Datastore.