Tools container
The tools container makes it easy to get all of the dependencies needed to interact with the homelab.
How to open it
You can use the default Docker wrapper, or use Nix if you have Nix installed:
make tools
nix develop
Tip
If you have direnv
installed, you can run direnv allow
once and it will automatically enter the Nix shell.
It will open a shell like this:
[khuedoan@ryzentower:~/Documents/homelab]$ echo hello
hello
How it works
- All dependencies are defined in
./flake.nix
- When you run
make tools
, it will run a thin Docker wrapper with thenixos/nix
image (because not everyone has Nix installed) and mount some required volumes nix develop
will start an interactive shell based on the Nix expression in./flake.nix
and install everything from there
Known issues
- If your Docker engine is not running in rootless mode, all files created by the tools container will be owned by
root