Member-only story
Deploying a Gatsby website to AWS using CircleCI and Pulumi
Optimising the build and deploy process to be just as fast as Gatsby Cloud
I host all my websites on AWS, whether it’s an old PHP based website or a Next.js based website which now lives in an EKS (Elastic Kubernetes Service) cluster or static based sites using Amazon S3 and CloudFront.
Gatsby has fast become one of the most popular frameworks for building React-based websites. Since first experimenting with it a few months ago, I’ve definitely converted to it, quite literally. I’ve migrated both a pure React app and a Next.js app over to Gatsby.
There are a number of ways to deploy a Gatsby website, such as Zeit Now (which is now Vercel), GitHub Pages, and even AWS Amplify.
Gatsby now has its own offering called Gatsby Cloud, and it’s possibly one of the easiest and fastest ways to deploy a Gatsby website.
However, I like the flexibility you get from using CircleCI as I can use it for all of my projects.
In order to deploy my websites from CircleCI, I use Pulumi to manage the infrastructure. In short, Pulumi is infrastructure as code, allowing you to use programming languages like TypeScript to define, deploy and manage infrastructure within Amazon AWS, Azure, Google…