I set up a custom domain with App Engine after following the instructions on DNS records:
https://cloud.google.com/appengine/docs/standard/java/mapping-custom-domain
Here's a step-by-step:
subdomain.example.com
you need to own example.com
)
If not, ask a friend to add you as an owner.ghs.googlehosted.com
(in Cloud DNS or wherever).
Note: This will cause downtime, but it is required for App Engine to create an SSL certificate so downtime is unavoidable...App Engine -> Settings -> Custom Domains
Add a custom domain
Continue
subdomain.example.com
) and click Save mappings
Done
(you already did this last step)gcloud app describe --project <GOOGLE_CLOUD_PROJECT_ID>
and take a look at the current section of dispatchRules
dispatch.yaml
or dispatch.yml
file with your new rule as well as the ones already existing above (note the file format is different from the command output)dispatch:
- url: <DOMAIN>/* # e.g. subdomain.example.com/*
service: <SERVICE-NAME>
gcloud app deploy dispatch.yaml --project <GOOGLE_CLOUD_PROJECT_ID>
Check how to use subdomains and how wildcard mapping works in the GCP docs here (actually these are the next steps at the website which you've followed and linked). Make sure that your DNS provider permits wildcards in CNAME
host entries, otherwise such mapping will not be possible.
This blog post shows a real-life example of matching subdomains to services with App Engine.