2026-04-30
Tagged: update, web

I moved my site to Hetzner, and use Payload CMS

I originally built this site back in 2021 using Next.js. At the time, Vercel was heavily promoting its seamless deployment infrastructure, which made it the obvious choice. However, as the project evolved, I realized I needed a database and wanted to experiment with open-source Content Management Systems (CMS). I quickly found that scaling these features on Vercel’s infrastructure would exceed the free tier limits, prompting me to explore more cost-effective alternatives.

Discovering New Tools

payload cms logo

Through my professional work, I was introduced to Hetzner, which stands out as one of the most affordable VPS (Virtual Private Server) providers on the market. Around the same time, I came across PayloadCMS on social media. They position themselves as the premier CMS for Next.js, and for good reason. While most headless CMS options require you to manage a completely separate application, PayloadCMS integrates directly into your existing codebase.

The Implementation

Of course, the transition wasn't without its challenges. With a bit of assistance from AI, I managed to integrate the system and wrap my head around its core concepts, such as Collections and Globals. Once the local development was stable, I configured my own Hetzner server, containerized the entire application using Docker Compose, and deployed.

Looking Ahead

So, here we are. This new setup feels robust, but the real test begins now. I’m curious to see how this stack holds up over the long term—specifically regarding its reliability, ease of maintenance, and whether it remains a joy to use.