#TIL - Docker based static site hosting solutions

As a frontend developer, I deployed hundreds of static website projects until now on tens of different providers including GitHub/GitLab pages, Netlify, Surge.sh, Firebase, AWS S3 (+ Cloudfront) and also my very own domain to path redirected Nginx server. They are all good services but either expensive or limited for some use-cases.

Nowadays my favorite is Cloudflare Pages but main downside of it, basically you need to move your domain to Cloudflare to get the full advantage of Pages. Cloudflare DNS (and CDN) is also a great and -mostly- free service, so no problem for your own websites. But if you consider to deploy autogenerated static websites for a SaaS project, then you have some challenges.

Today I was having a look for good self-hosted solutions and noticed Meli on a Reddit post.

GitHub - getmeli/meli: Platform for deploying static sites and frontend applications easily. Automatic SSL, deploy previews, reverse proxy, and more.
Platform for deploying static sites and frontend applications easily. Automatic SSL, deploy previews, reverse proxy, and more. - getmeli/meli

It looks very nice! It targets to really replace a static hosting service like Netlify. It has a UI, a CLI and many configuration options. It looks unmaintained anymore dough (I even considered to maintain it). It uses Caddy as the HTTP server, which is the one I always want to try but no chance yet. Apparently it can work with Docker Swarm behind Traefik, which is also important for me.

Other one that I could find was staticdeploy.

GitHub - staticdeploy/staticdeploy: Open-Source Platform for Deploying Static Apps
Open-Source Platform for Deploying Static Apps. Contribute to staticdeploy/staticdeploy development by creating an account on GitHub.

It seems like the development of this project also stopped 3 years ago as Meli (Something must have happened about this matter 3 years ago. 😊 ) This project doesn't have a UI but still have good configuration options, a CLI helper.

I'll try both projects and give it a try. Maybe I can write my thoughts later in a separate article.

BONUS: I also came across such a fun article while researching this topic:

The smallest Docker image to serve static websites
The smallest Docker image to serve static websites
Me on Mastodon: https://synaps.space/@murat