Seed can help you configure a custom domain for any of your stages in your project.
Here are a couple of things to ensure before setting it up:
Currently, Seed only supports the configuration of domains managed by Route 53. You can read more about migrating to Route 53 here.
Ensure the IAM Policy has the appropriate permissions
Seed does all the configuration on your behalf using the IAM Role assigned to it when you created the project. Just ensure to give it the appropriate set of permissions as outlined in the Customizing your IAM Policy chapter.
To configure a stage with a custom domain, Seed will automatically create the SSL certificate using AWS Certificate Manager and assign the requested path and sub-domain to the API Gateway stage.
Domains need to be managed by Amazon Route 53 for Seed to configure the custom domain
To configure the custom domain for a service, head over to a stage you want to configure.
And click View Resources for the service you want.
And select Settings.
And select Update Custom Domain.
Here you can pick the sub-domain, domain, and base path for the stage.
For example, to configure your stage to
api.example.com/prod; you can set the sub-domain as
example.com as your domain, and select
prod as your base path.
And hit Update. Updating the custom domain for a stage can take up to 40mins, since the SSL certificate and the API Gateway CloudFront Distribution need to be configured.
Seed automatically configures the SSL Certificate and the API Gateway project
If you have any questions or are running into some issues configuring your custom domain; feel free to contact us.
A couple of quick notes on custom domains:
Seed will let you know if the given base path is in use. In this case you’ll need to disable the stage that is using the base path.
If a stage is configured to the root base path (
/); you will not be able to configure another stage with any other base path for that domain (or sub-domain). For example, if you have
api.example.com/configured to a stage (where
/is the base path). Then you will not be able to configure
api.example.com/prodfor any other stage.
Finally, you can disable the custom domain for a stage.
Just hit the Disable button in the Update Custom Domain panel.