Hello World
To create my personal space on the web I needed to find the right technology. I wanted an easy to use CMS which gave me some headroom for the future.
I decided to dive back into the world of web technologies and create my own blog. Boy, have things changed since I created my last website 5 years ago.
In this post, I will take you through the process of me starting from the idea of creating a blog to this first post.
CMS
It took me maybe 20 minutes to realize I was too long out of the game to create something from scratch. I looked into the latest trends in web dev technologies, and things have clearly changed since the day I created my last website. I was hesitating a bit to create a website using a static site generator, but in the end, I chose the easy way.
When looking for "self-hosted blog" on Reddit, it quickly became clear there was one favorite across the open-source, self-hosting community: Ghost. It is an easy-to-use CMS which is completely open-source. You can choose to let Ghost do the hosting, but they also offer an option to self-host your Ghost instance. I chose the self-hosting option.
Last but not least, it is ready for the future. Ghost offers a lot of features which I currently don't need: newsletter, members, payments, tracking,... You never know where this new pet project will bring me, at least I have some head room with ghost 😄
Domain Name
Registering a domain name is easy. I purchased mine at Combell since it is a Belgian company. However, I liked the idea of managing my domain name at the same place as my server, so I set up my DNS servers to the name servers of DigitalOcean so I could manage my domain from there.
Hosting
For hosting, I went for a classic: DigitalOcean. You get an easy-to-use interface for a reasonable price. There is even a Ghost app droplet in the DigitalOcean marketplace. Once I created the droplet using this guide from Ghost, I was faced with the second problem: the Ghost instance would not boot. After running the command "ghost doctor," I was notified my server had too little memory. After upgrading my VPS to an instance with 2 GB RAM, I was able to see my website.
Setup
Enabling the theme (I went with a free blog theme, which is fine for me) and disabling all subscription stuff, I was ble to create this first post. I am really amazed at how easy writing an article for my own Ghost website is. I don't need any technical stuff, and I can just write the content in a "Notion-like" interface.
Future
Later on, I would really like to implement some kind of version control. Ideally, I write my blog posts locally in markdown, push them to my Git repository, and my CI/CD pipeline makes sure it gets published.
Another thing I would like to experiment with is containerization. Ghost does offer a docker image. I would like to experiment with running the entire website via container technology. This way, I would like to improve my knowledge on this topic