What you find annoying is empowering tons of people like me to run lot of software. I can try lots of software I wouldn't have bothered with due to ease of setup. I don't bork my host machine when I make mistakes. I just start delete the container and start over, with a few adjusted settings before build or compose steps.
1337 hackers can run circles around me for sure, but I have a freaking datacenter in 3 computers at my house. All of them are internet facing with Cloudflare tunnels pointed at the services I want to share or use away from home. It has never been this good.
I want to be able to consume and run code provided by other people on hardware/networks that I own.
In which case - Docker/Containers/K8s(or my preference, MicroK8s) are a fucking godsend compared to 10 years ago.
I host about 25 services, I have all the config in a single repo, and can rebuild the whole fucking thing in about 10 minutes.
Adding a new machine to take load is as easy as installing ubuntu server, adding microK8s, and running a SINGLE freaking line on the cli. Boom - done. I do this basically each time we get a new machine... the old one goes to live in the server farm.
All the backups? Easy, since the storage is my NAS, mounted in microK8s, and I can just run scheduled backups there for literally every new service, without any additional config as I add them.
It's incredible. I have done the whole "SSH into each machine and tediously configure it to run a specific application, configure my router, make sure the config files are in the right place, configure backups, worry about HDD lifespan, etc" bullshit for long enough to know that I don't EVER want to go back to that.
The people that keep talking shit about containers are still incredibly focused on the use-case of "I host my own blog" like that's all that self-hosting is. But it's not - I self host open source applications as a complete replacement for shitty, ad-driven, recurring subscription fee based SaaS companies.
Meal planning (mealie),
Calorie tracking (calorietracker),
Video streaming (jellyfin),
Google Docs/Notion/etc (bookstack/nextcloud),
Authentication (keycloak),
File sharing/storage (seafile),
Digital Library (calibre),
Home automation (openhab),
Asset tracking (snipeit),
todo lists (Taiga),
scheduling (cal)
etc...
Containers aren't there to help you host your blog. They're there to let me host your application. Configured quickly and simply.
If there's company making money through a recurring subscription based website... There is someone who has made a decent clone that I can self-host.
And these tools make that process much easier than it used to be.
You need to be careful with your mount options here, since soft mounts can cause corruption in some cases and performance is not fantastic (although nfs v4.1 is better than nfs v3) - but overall it works and keeps backups strategies simple since everything is on the NAS.
Sadly - it's fairly slow (sqlite in particular is painfully slow when under lots of load and needs care to ensure only one machine is writing to it at a time) but right now I'm avoiding more complex setups since it's not normally a problem with just me+family using things.
Long term - I've been considering moving to iSCSI, or something more robust, but it just hasn't been worth the trouble yet.
Did make me like sqlite a whole lot less though - I opt for mariaDB/Postgres on any service that supports a remote db - they seems to do just fine. 3 years in on this setup and no corruption outside of sqlite on a soft mount (which was solved by reverting to my last backups).
You'd be surprised what you can do with simple files and a single static webserver.
What makes running these things easy isn't the container but that the software is packaged at all and would have the same effect if it were done through a conventional package manager. So of course docker seems like an upgrade when the only other thing they're offering is a loose distribution of files you have to manually copy in and configure.
... i have a vpn and my docker containers work just fine?
Tedious.
In what way does _only_ having a docker install option empower you?
GP wasn't stating that docker is bad, but docker _only_ options are bad.
There are many use cases that are not yours that docker doesn't suit.
The current model for a lot of self-hosted software is "make money with a SaaS offering", which is a fine model IMO, but now you have to cater to two different scales: the small "downscale" of the self-hosted user, and the larger "upscale" one of your SaaS offering.
I actually work on one of those "open source with SaaS offering" things, and it's a real challenge to unify these two use cases because the involved tools are quite different, and I don't want to implement everything twice.
Docker can offer a solution to abstract the complexities that are required, although I agree it's not a good solution to 100% rely on it (which is why I don't do it).
My complaints mainly stem from how docker is often kind of finnicky, eg in a previous setup of my server, I had to put everything through a VPN, but Docker didn't play well with a VPN running on the main system, so I had to limit myself to things I could install without Docker until I had to migrate to a new install.
Another issue I ran into with migrating servers was restoring a Postgres db dump to docker, which similarly didn't have much documentation, so for that I had to resort to a traditional setup. Which made me pretty happy that they at least support traditional setups, even if they lean more towards Docker.