mirror of
https://github.com/khuedoan/homelab.git
synced 2025-01-13 08:14:32 +07:00
1405fadf1a
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
37 lines
910 B
Markdown
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`
|