Reclaim Hosting is planning on using Ghost to power our monthly newsletters starting this month, so Pilot has been exploring installing it on Reclaim Cloud using the Marketplace app. Turns out it was out-of-date and not so easy to update, so we explored getting Ghost Docker image running in the Cloud using Docker Engine, which Pilot documented brilliantly on their blog. Turns out it might even be easier to install Ghost using Docker Hub on Reclaim Cloud, so the following video and guide will take you through that process.
So, in Reclaim Cloud you can create a New Environment:
After that, make sure you are on the Docker tab and click on "Select Image":
[*Read more about option to rename environment subdomain at bottom of this post.]
After that you will be given a dialogue box with a search bar to find containers on Docker Hub. Type in "Ghost," and the first option is the official image, which is recommended:
After that select the top-most Ghost image:
Then click "Next" and the Docker container will be selected. After that you want to ensure the public IP address is not selected for this container, and you can also choose from one of four regions to install to:
Once the Ghost container is set, you will need to add a Load balancer, which will enable the instance to have a Let's Encrypt certificate for mapped domains. This environment will also need the public IP address, so be sure to turn that option on:
After that you can click Apply and the environment will be spun-up.
Once the environment is spun-up, you will need to do two things. First, point an A record for the domain you want to map to the environment's public IP address. I did this through my DNS settings in Cloudflare, and you can see it below:
After that, you will need to go to the Add-Ons icon for the Load Balancer container and configure the SSL certificate through Let's Encrypt:
Once that is done you should be able to load Ghost at the mapped domain you specified:
To configure Ghost you would need to go to yourdomain.com/ghost --good luck!
*While optional, it might be useful to rename the environment subdomain to something a bit more user-friendly: