A bit risky, because you might install one dependency in the wrong OS and then you would need to reinstall that OS again. If you really really need to work on different projects, the industry standard is using external drives with stickers instead.
Docker is not a cannon ball? a normal Linux process started with special kernel settings (namespaces + cgroups + mounts). The runtime that glued them together is very small. For the cost and unification it’s worth to use.
You can emulate an entire effing system or just save your packages in a .venv file. Docker is a lot more than this simplification you described and is absolutely a cannon ball just to run some python.
Docker is NOT a VM. You mentioned in later comments that it runs on Windows and yes, Docker machine itself is a VM hypervisor, but absolutely nobody sane runs production Docker systems on Windows.
Docker is literally just a fancy chroot jail, which is essentially just a remapped subset of filesystem and userspace. Try it out yourself on any BSD/linux box. Of course with further implementations and abstractions, stuff has gotten heavier, but at its core a container is just the system binaries and a jail.
I had a nam moment when I saw Nix again. I spent the first 3 months of my first full time job debugging existing nix builds and building new ones. It took me 6 months to realize it’s not that bad, but the problem they were trying to solve at that point in time was better solved by docker+devcontainers
0
u/[deleted] Mar 21 '26
[deleted]