Migration to Hetzner & Dokploy
Previously, both of my websites, dimitristrechas.com and skateparks.gr, were hosted for free on various platforms. Specifically:
dimitristrechas.com
- The Next.js app was hosted on Vercel
- The Strapi backend was hosted on Render
- The Strapi PostgreSQL database was hosted on Supabase
skateparks.gr
- The entire application was hosted on Fly
- AWS S3 was used to host the sitemap
I didn't want to rely on free tiers anymore. While they are much appreciated, I wanted to have more control and also learn more about self-hosting.
Choosing Hetzner as my VPS provider was a no-brainer—their pricing on the lowest tier provides all the horsepower I currently need.
Dokploy was a late addition to my plans. Originally, I had planned on using Kamal 2, but Dokploy's provided UI interface won me over.
The whole process was very smooth. There are numerous guides on how to set up a Hetzner VPS with Dokploy.
Setting up my apps was mostly straightforward. Dokploy's Nixpacks automatically detected my Next.js and Strapi apps for dimitristrechas.com. All I had to do was deploy a dedicated PostgreSQL database and pass the correct environment variables.
For skateparks.gr, the process was also surprisingly easy. Since it was already configured with a Dockerfile, all I needed to do was set up a dedicated PostgreSQL database.
Overall, I am very happy with the transition. Now it's back to feature development!