Installing Multiple Ghost Blogs—Ghost-CLI On Ubuntu + CloudFlare On One DigitalOcean Droplet—Solutions
This disclaimer informs readers that the views, thoughts, and opinions expressed in the following article belong solely to the author, and not necessarily to the author's employer, organization, committee, or other group or individual. The following write-up is a personal perspective based on the author's personal experience and account.
The author shall take no responsibility or be affiliated with any of the readers' own take or experiments to replicate the results expressed in this article. Readers are reminded to practice self-caution, safety, and calculated risks prior to any experimentations, as well as to double-check on details prior to any potential actions or purchases.
Why Install Ghost On Ubuntu?
This path will definitely be very challenging, but it offers up full controls and accessibility to install multiple instances on ONE Ubuntu server while still enabling fully customisability and ease-of-maintenance per Ghost instance for the long-term.
More importantly, this option offers me the ability to use Ghost-CLI (Ghost-Command-Line-Interface), where I can have full control to execute additional manual installs, upgrades or uninstalls in the future, whenever I may need.
If this doesn't represent your choice of setting up multiple Ghost-installs on ONE Server, you should check out this article I wrote about the other option(s) that are available to you.
Benefits
- Monthly Cost-Savings—Save on additional costs running multiple servers. However, if you do expect high-traffic to your website, then please skip this guide entirely. You will be better off tapping on a Ghost(PRO) Subscription.
- Consolidated Ghost Websites Management—Handle multiple instances of Ghost in one SSH login and not needing to open up multiple, confusing connections to multiple servers to handle multiple Ghost websites' maintenance.
- Full Individual Ghost Control Thru Ghost-CLI—Having Ghost-CLI allows for individual Ghost instances to be easily managed, upgraded or uninstalled where necessary.
- Flexible Customisation Where Needed—It also makes for easy customisation per Ghost instance, such as implementing a Custom Storage Adapter where needed.
Limitations
- Tedious To Setup—Will require some significant Technical knowhow, persistency and lots of patience!
- Limited Ghost Installs On 1GB-Memory Server—DigitalOcean Baseline 1GB-Memory (USD5.00) Server might only be able to handle a maximum of 2x Ghost installations at one time. I have been testing the server for >1 month and do frequently experience
Request Timeout Errors
, where either (a) Ghost lost connection with Server due to maxed out memory usage, or (b) Ghost is unable to automatically-save the work I've typed, or (c) Ghost faced the occasional problem of uploading multiple images at once or large images that are >1MB.
The solution is to do a ForcedPower Cycle
process via Droplet > Power > Power Cycle.
This issue can also be easily mitigated by upgrading to a server configuration that has significantly more memory, which does add more to your monthly costs.
Caveat
This setup requires some Significant technical-knowhow on how to use the following toolset:
- Terminal (macOS) or Command Prompt (Windows),
- Command Line Interface (CLI),
- GitHub, and
- Ubuntu Operating System (Linux)
However, this guide is designed to be "Intermediate-friendly", and should not pose as a challenge to many as long as you are willing to try. ✌🏻
Should you decide that this setup may be too much of a hassle and you don't mind just running through with ONE Ghost installation on ONE DigitalOcean Droplet, you can check out How To Install Ghost With Custom GitHub Storage Adapter On DigitalOcean + CloudFlare—Solutions.