khuedoan-homelab/docs/concepts/tools-container.md
Khue Doan 1405fadf1a refactor(docs): apply the Diátaxis framework
Squashed commit of the following:

commit 257867f196376df55fa0f57edbdf33967b1da04e
Author: Khue Doan <mail@khuedoan.com>
Date:   Sun Sep 18 16:45:42 2022 +0700

    refactor(docs): apply the Diátaxis framework
2022-09-19 02:40:07 +07:00

910 B

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:

=== "Docker"

```sh
make tools
```

=== "Nix"

```sh
nix-shell
```

It will open a shell like this:

[nix-shell:/home/khuedoan/Documents/homelab]# echo hello
hello

How it works

  • All dependencies are defined in ./shell.nix
  • When you run make tools, it will run a thin Docker wrapper with the nixos/nix image (because not everyone has Nix installed) and mount some required volumes
  • nix-shell will start an interactive shell based on the Nix expression in ./shell.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