Domain names
Add custom domains to your project
By adding a custom domain to your project, web traffic can be served on your own fancy domain name in addition to the default <project-name>-<nonce>.shuttle.app
.
You can add a root-level domain (example.com
) or a subdomain (thing.example.com
).
Adding a custom domain to your project follows these steps:
- Purchase a domain name from a DNS provider,
- set up a DNS record to make it point to your Shuttle server, and
- generate an SSL certificate that enables HTTPS traffic to your project.
Set up DNS record
The process for setting up the required DNS rule looks different depending on which type of domain and registrar you have.
Cloudflare
If you have your domain name on Cloudflare, the process is quite simple. Go to Websites -> <your domain> -> DNS -> Records -> Add Record
, then follow the relevant section below.
Root domain
Add a CNAME
record from @
to your *.shuttle.app
subdomain. Disable the Proxy.
Adding a CNAME
on the root level here is possible due to Cloudflare’s CNAME flattening.
You can also add a CNAME
for the www
subdomain if you also want traffic to www.example.com
to arrive to your service.
Subdomain
Add a CNAME
record from your subdomain to your *.shuttle.app
subdomain. Disable the Proxy.
In the example above, the subdomain thing
(as in thing.my-domain.com
) is being directed to example.shuttle.app
.
Other DNS providers
The process for other providers can vary, but here are the general steps. If you want to add docs for a specific provider, feel free to contribute to this page.
Root domain
If you are adding a root-level domain, add one or more A
records that point to the same IP addresses that are returned by dig A example.shuttle.app
:
13.43.102.179
, 35.176.103.249
, 3.9.87.116
.
Subdomain
If you are adding a subdomain, add a CNAME
record from your subdomain to your *.shuttle.app
subdomain.
Set up SSL certificate
Once the DNS records have propagated, add an SSL certificate and start receiving HTTPS traffic by running:
After that, you can manage certificates with: