This is the last part of the series of posts to setup your personal website using GatsbyJS and Ghost deployed on AWS.
Create a git repository for your project and push the code that we generated in the previous post to this repo.
Open the CodeBuild console. Make sure that the Region selected in the top left corner is that same as your S3 bucket. In my case, it is
Create Build Project.
Github in the
Source provider field.
Connect to Github and grant access.
Repository in my GitHub account option.
Select the repository of your Gatsby project.
Additional Configuration in the Source section and click
Rebuild every time a code change is pushed to this repository. This will send a webhook to rebuild your project when you push any change.
Ubuntu in the
Operating system field.
Nodejs as the
10.14.1 in the
Runtime version field.
New Service Role in the
Service role section.
Leave everything else to default and click
Create Build Project.
Open the IAM console.
Policies in the sidebar.
Policy usage tab.
If you can see your codebuild role that you created earlier in the list here, you can skip attaching it again. Else continue.
Select the codebuild role that you created in the previous section and click
Create a file called
buildspec.yml in the root of your project and enter the following (Replace
aotd.co with your bucket name):
version: 0.1 phases: install: commands: - npm install --global yarn - npm install --global gatsby-cli - yarn - gatsby build - aws s3 sync public s3://aotd.co --delete
Commit this file and push to master branch. This will trigger a build in the AWS CodeBuild.
You should now have a running Gatsby site on your domain.
Whenever you publish an new blog from the Ghost editor, you can head over to the CodeBuild Dashboard and click
Start Build. This will create the new static files from your Ghost blog and deploy your site.
I hope this series was useful to you. Do subscribe to my email newsletter to get notified when a new blog post is up.
You can now configure your website in whichever way you want. The code for my personal blog is hosted at https://github.com/nishantdania/website. Feel free to use this as a reference if you want. For any doubts/issues/questions, post those on the Ghost Gatsby Spectrum channel.
Get My Newsletter
Subscribe to my newsletter to get notified about the new posts on my blog. No spam. Unsubscribe anytime.Subscribe