Where to host a personal blog - Ghost?
Choosing between WordPress and Ghost for your personal blog? This article covers key factors like hosting options, cloud vs. on-premise, managed vs. self-hosted, and my personal setup to help you make the best choice for your needs.
Intro
Hello. Since I became interested in the homelab topic, I've had a desire to create my own website and host it myself. However, the deeper I delved into the information terrain, the more I discovered interesting services that I could self-host, including blogs. Therefore, to save time, I decided not to reinvent the wheel and to use a ready-made blog platform.
I quickly reviewed several of the most popular solutions, but visually, I only liked Ghost, so let's compare it to the market leader.
WordPress or Ghost?
The most popular on the internet is, of course, WordPress. However, in direct comparison with competitors, it no longer looks as cool as it is sold. Moreover, for my modest needs and preferences, there were certain requirements like simplicity and speed.
External Arguments
If you're interested, in the posts provided, you can read about the difference described by other authors. I don't see the point in retelling everything.
But the best way to hear about Ghost is from Ghost itself on the official website.
My Choice
For me, the key advantages of Ghost are:
- Speed
- Ability to perform code injection via UI
- Node.js as the foundation (which provides speed)
- As a developer, it's easier for me to delve into the code and make adjustments if needed
- Ghost is an open-source project on GitHub, so you can contribute or fork it and create something of your own
- Simplicity of UI both for users and authors
- Price - though it's in the last place, it's no less important than everything else
Hosting
Ghost offers its own cloud hosting, Ghost(Pro), for just $9 per month, which is quite reasonable. You can check out the current packages here.
I don't see the point in taking anything more than the Starter package for a personal blog.
Only if you need to have multiple authors, or you expect a influx of subscribers, or if you are an organization from the outset, then perhaps other tariffs will suit you.
In the cloud or at home?
So for those who have a weak understanding of what they're doing, and also don't have time for all this - the starter package for $9 per month will be a really good solution and that's where the interesting part ends for you 🙂
To be honest, I would have chosen it myself if I didn't have the desire to try something new for myself. And also, having all the resources for self-hosting, it was extremely difficult to choose the option where you have to pay $9 per month compared to another one for $1 per year. We'll get to that one, a little patience, we haven't finished with clouds yet.
So let's continue with those who know a little more about hosting, domains, hardware, port forwarding, SSL certificates, and so on. Are these words not scary for you? Then buckle up.
The hosting provided by Ghost itself is a cool solution, but what do they charge money for?
- They provide a domain name (accessible to everyone on the internet)
- They store your content and make backups
- They ensure continuous operation and support
- Automatically update your blog
- Handle mailing
From this list alone, we can only solve the problem of the domain name and support from Ghost developers on our own, but that's understandable. In this case, you'll have to buy the domain yourself.
But a self-hosted blog will not have limitations on the number of subscriptions or authors, which can be a key factor.
Under management or self-hosted?
To avoid any misconception that it's just trivial stuff and a few minutes of work, I'll provide you with a comparative table between managed hosting and self-hosted.
Service |
Ghost (Pro) |
Self-Hosted |
Hosting Cost |
Starts from $9 per month |
Depends on the cost of electricity, domain name, and hardware you purchase |
Control |
Under external control |
Full control over hardware and software |
Installation and Configuration |
Available |
Self-managed |
Email Newsletter |
Available |
Self-managed |
Built-in Image Editor |
Available |
Paid or without it |
Server Updates and Maintenance |
Available |
Self-managed |
SSL Certificate |
Available |
Self-managed |
Security and Continuous Operation |
Available |
Self-managed |
SSH and Database Access |
Not available |
Available |
Backups |
Available |
Self-managed |
Support |
Dedicated support team available 24/7 |
No support |
Indeed, it seems like there will be quite a bit of work involved.
Self-hosting in the cloud?
When you don't have a stable internet connection at home, or your provider has limitations, or you don't have dedicated hardware that will run 24/7, you can do everything in the cloud.
This is not necessarily about saving money, but perhaps more about having full control over the situation if that's important to you.
For this purpose, DigitalOcean or another cloud hosting provider that offers dedicated servers would be a good fit.
Since we previously discussed savings, a dedicated server plus a domain name in terms of cost will quickly bring you closer to the Starter package, especially considering your personal time. Therefore, for me, this option makes sense only when you're an organization, and the difference between the package you need for your team (number of people) and self-hosting in the cloud will be significant.
Self-hosting at home?
And here's where the most interesting part begins. Here's what we need:
- Purchase a domain name.
- A stable internet connection and access to your own router for configurations, in the simplest case.
- A dedicated server to run the blog.
- Knowledge of how to set it all up.
My setup
I'll briefly outline what I did to finally have this blog.
I installed Proxmox VE on my home server Fujitsu Futro s920 and configured it. Then, I created a container with Ubuntu 23.10 standard.
Then, I went through the installation guide step by step via the console. At this point, I had a working blog accessible on my local network.
To make it visible beyond just myself, I had to purchase a domain name on the website https://www.namecheap.com/ for $1 per year. Next, I transferred the nameservers to be managed by https://www.cloudflare.com/. Then, I used Cloudflare Zero Trust to create a tunnel into the local network. For the tunnel, I launched a container in Docker, which I also installed in Proxmox VE.
Once the tunnel was operational, all that remained was to link my container with the blog to the domain on the Public Hostnames tab. This way, Cloudflare controls all the traffic going to my domain and redirects it through the tunnel to the server (virtual) with the blog that I specified.
From experience, I can say that the most challenging part was choosing among different solutions, and this setup turned out to be quite straightforward to configure with certain knowledge.
Of course, I won't be able to describe all the setups and pitfalls here and now. Trust me, what I've described in a couple of paragraphs would fill two separate articles.
Conclusions
Overall, we have three options:
- Ghost(Pro) from the authors of this blog, starting at a minimum subscription of $9 per month.
- We can self-host in the cloud, which is more suitable for organizations than for personal blogs.
- It requires purchasing a domain name
- And a dedicated server in the cloud, possibly even two (one for the database), which is also paid.
- You need to address backup, updates, and maintenance.
- This minimizes the accessibility issue (for example, in case of power outage).
- We can do everything ourselves, saving on everything except the domain name, but this is only possible with an energy-efficient computer as a home server, investing time and acquiring certain knowledge.
- You still need to buy a domain name
- And have the hardware
- And so on and so forth.
But I want to emphasize that the first two options will always cost you money, and in the case of the second option, even nerves, so I would never recommend them for a personal blog. Because if things don't work out, why overpay?
And you also need to consider the perspective. Because the $9 saved per month, for example, can be invested in purchasing different hardware, expanding memory for backup, and so on...
And where else will you get such an interesting experience? It's not all about money.
It's worth mentioning the problems you can't protect yourself from at home - like power outages, internet issues, or other factors beyond your control, like pets happily chewing on network cables.
Among the advantages of the self-hosted option, I see complete control over every process:
- Need good availability? You can host at home, at your parents' house, and at a friend's simultaneously, and balance traffic between multiple servers that synchronize with each other.
- Don't trust anyone? Set up access rules for the blog yourself, where, for example, you'll only write and publish from the local network.
- Already had your blog hacked? Not a problem, we retrieve our backup, change passwords, improve security, and open access anew.
I hope you've drawn your own conclusions and chosen your option, or I don't exclude the possibility that you may have finally rejected this idea.
Thank you for your attention!