Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I completely disagree.

> Docker adds indirection on storage, networking, etc.,

What do you mean by "indirection"? It adds OS level isolation. It's not an overhead or a bad thing.

> makes upgrades difficult as you have to either rebuild the container, or rely on others to do so to get security and other updates.

Literally the entire selfhost stack could be updated and redeployed in a matter of:

      docker compose pull
      docker compose build .
      docker compose up -d
Self hosting with something like docker compose means that your server is entirely describable in 1 docker-compose.yml file (or a set of files if you like to break things apart) + storage.

You have clean separation between your applications/services and their versions/configurations (docker-compose.yml), and yous state/storage (usually a NAS share or a drive mount somewhere).

Not only are you no longer depended on a particular OS vendor (wanna move your setup to a cheap instance on a random VPS provider but they only have CentOS for some reason?), but also the clean seperation of all the parts allows to very easily scale individual components as needed.

There is 1 place where everything goes. With the OS vendor package everytime you need to check is it in systemd unit? is it a config file in /etc/? wth?

Then next time you're trying to move the host, you forget the random /etc/foo.d/conf change you made. With docker-compose, that change has to be stored somewhere for the docker-compose to mount or rebuild, so moving is trivial.

It's not Nixos, sure. but it's much much better than a list of APT or dnf or yum packages and scripts to copy files around



Tools like Ansible exist and can do everything you mention on the deploy side and more, and are also cross platform to a wider range of platforms than Linux-only Docker.

Isolation technologies are also available outside of docker, through systemd, jails, and other similar tools.


> Tools like Ansible exist and can do everything you mention on the deploy side and more (...)

Your comment is technically correct, but factually wrong. What you are leaving out is the fact that, in order to do what Docker provides out of the box, you need to come up with a huge custom Ansible script to even implement the happy path.

So, is your goal to self host your own services, or to endlessly toy with the likes of Ansible?


Is your goal to run your own services, or to understand them? The two are not mutually exclusive, and one can certainly understand containers, but the general vibe from this thread seems to be “I like containers because I don’t have to understand the magic they’re doing.”


funny because it seems to me that the general vibes are "I don't like containers because I can't learn something new"




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: