Deploying to KintoHub
KintoHub is a next-gen cloud package manager. Making it easy to host and manage websites, backend APIs, cron jobs, databases and more in a production grade fashion for all your apps.
KintoHub has a free tier that you can use to deploy your static sites. Here are some features that come with it:
- CICD from GitHub - You can build different branches and tag them to make sure the websites you deploy into staging and production environments are the same.
- Automatic Let’s Encrypt certificates.
- Teams - invite your collaborators on your workspace to work with you.
- Setup custom domain names with automatic Let’s Encrypt certificates.
- Multiple environments (development, staging, production).
- Password Protection.
Prerequisites
This guide assumes you already have a Gatsby project to deploy. If you need a project, you can use the Quick Start or KintoHub’s template Gatsby Template before continuing.
Setup
In order to deploy a Gatsby site on KintoHub, you will need to create and deploy a KintoBlock into an Environment (development, staging, production).
Note: A KintoBlock is connected to a GitHub repository. Accessing the kintoblock page will allow you to build, manage or tags any branches of your repository.
Create a KintoBlock
Register on KintoHub.
Create a new KintoBlock of type Website and give KintoHub permission to access your GitHub repo.
Select your GitHub repo from the list and press Continue.
Choose Static from Build with the following values:
Name Gatsby Website
(or your own name)Language Node.js
Version latest
(or your own node.js version)Build Command npm install && npm run build
(or your own build command)Build Output Folder public
(or your own output directory)Press Create Website.
The build will automatically start on the default GitHub branch of your repository. Wait for your build to be successful (green).
Multiple Branches
When you create a new KintoBlock, KintoHub imports all your branches and you can access them from your kintoblock page (new branches will also be automatically picked up). You can switch from one branch to another by pressing the branch name on the side panel on the left.
Continuous Integration
By default, KintoHub will build all the changes you push on your default branch. If you want to disable it:
- Disable the toggle Build New Commits.
- Press Save Changes.
Your new changes will not be automatically picked up anymore and you will have to press Build Latest Commit to trigger a build.
Deploy your KintoBlock
From your KintoBlock page, you will need to deploy your website first before accessing it.
- Press Deploy Now and then New Project.
- You can change the default values (optional).
- Press Create New Project.
The deployment will start. Wait for it to be successful (green).
Note: you can disable Continuous Deployments for future builds.
Access your KintoBlock
From your Project page.
- Scroll down to the Added KintoBlocks list.
- Press Open on your kintoblock (
Gatsby Website
).
And that’s it!
Deployment Configuration
You can configure additional features directly from your Project page. If you’re not already there, select Projects on the left-hand navigation bar, and then click on the project you want to configure.
Basic Auth
- Scroll down to the Added KintoBlocks list.
- Click on the cog next to your kintoblock (
Gatsby Website
). - Enable Password Protected.
- Enter Username and Password.
- Press Done Configuring and then Deploy.
- You’ll see a Compare Versions screen. Click Confirm Deployment.
Wait for the deployment to be successful. Refresh the page, your website is now protected.
Custom domain
- Scroll down to the Added KintoBlocks list.
- Click on the cog next to your kintoblock (
Gatsby Website
). - Under Custom Domain, enter your custom domain name.
- Follow the instructions under Setup.
- Press Done Configuring and then Deploy.
- You’ll see a Compare Versions screen. Click Confirm Deployment.
Wait for the deployment to be successful. Access your new custom domain.
Support
Chat with KintoHub developers on Discord or email ben@kintohub.com
.
Edit this page on GitHub