https://gitlab.com/stavros/harbormaster
As far as PaaSes go, it's probably the simplest, and works really well.
Ha! I'm store my data in /data for ages. The only difference is what at first I bothered with tinkering with datadir paths in configuration files, nowadays I just symlink /var/lib/whatsitsname to /data/whatsitsname. I'm lazy and boring.
It's basically a oneliner in bash. KISS
I can also back everything up by just copying one directory, so that's great too.
Bonus: it produces OCI images also.
- builds and dependency management, all in one
- works “the same” on my laptop and server
- there’s an easy way to reset services when they break
Containers... just work? Actually, Docker just works. It is rock solid and I'm very delighted I learnt so much of it.
The only thing I'm missing about Docker is a bigger focus on on-the-fly image editing. Like, I love to have these container development environments. I'd love to give some command inside the container and make it magically appear on the Dockerfile if it was successfully executed, so I don't have to manually copy things over when I want to have reproducibility for later.
Still sounds like over-engineering to me. It's trivial to make systemd supervise a service and automatically restart it on failure.
Meanwhile, my experience is a minimal CICD pipeline takes half an hour once you know manual deployment, and I lose far more having to SSH and run scripts myself than telling a machine to do it for me (not just time but mental satisfaction too).
Though I wouldn't call either fancy in this year. Only past that stage, where the benefits drop sharply for individuals.
Rootfs is the boring technology, their semantics is clear and most kernels have support for them.
Better: use systemd which has became truly boring and restarts your services automatically and if you don't like systems, plenty of alternatives such as s6 do exist.
Container with it is just a few files in etc and binary blob itself. Same with container-less deployment.