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

37 lines
910 B
Markdown

# 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`