Stop use docker

devilish666@lemmy.world to Programmer Humor@programming.dev – 739 points –
75

You are viewing a single comment

Nix user arrives to the room.

Can you elaborate?

Nix can build you a bit-to-bit exact environment for your app. It is a superior environment, but is hard to use in the beginning and users can feel snobby sometimes. It is awesome, but YMMV.

How do you separate Nix programs from the rest of the system?

It creates a set of symlinks so every program sees exactly the dependencies it needs.

https://nixos.org/guides/nix-pills/09-automatic-runtime-dependencies#automatic-runtime-dependencies

You can also create a container:

https://nixos.wiki/wiki/NixOS_Containers

Or you can create reproducible docker containers with nix:

https://dev.to/anurag_vishwakarma/a-better-way-to-build-reproducible-docker-images-with-nix-2k59

The secret sauce with nix is reproducibility. If it builds once, it will continue building exactly like that forever. Bit by bit.

That's very interesting, I was aware of how NixOS separated dependency versions but I didn't know it natively supported containers.