khuedoan-homelab/docs/installation/sandbox.md
Khue Doan adbaf32aa5 refactor(tools): switch to Nix
- Nix is more reproducible (pinned to a specific hash)
- Faster rebuild after changing the package list (due to /nix caching in volume)
- Users can still use make tools (wrapped in Docker) without installing Nix
- Using nix-shell will work if you have nix installed.
2022-08-26 19:08:52 +07:00

1.5 KiB

Development sandbox

The sandbox is intended for trying out the homelab without any hardware or testing changes before applying them to the production environment.

Caveats compare to production environment

The development cluster doesn't have the following features:

  • There is no valid domain name, hence no SSL certificates (some services require valid SSL certificates)
  • Only accessible on the host machine
  • No backup

Please keep in mind that the development cluster may be unstable and things may break (it's for development after all).

Prerequisites

Host machine:

  • Recommended hardware specifications:
    • CPU: 4 cores
    • RAM: 16 GiB
  • OS: Linux (Windows and macOS are untested, please let me know if it works)
  • Available ports: 80 and 443

Install the following packages:

  • docker
  • make

Clone the repository and checkout the development branch:

git clone https://github.com/khuedoan/homelab
git checkout dev

Build

Open the tools container, which includes all the tools needed:

=== "Docker"

```sh
make tools
```

=== "Nix"

```sh
nix-shell
```

Build a development cluster and bootstrap it:

make

!!! note

It will take about 15 to 30 minutes to build depending on your internet connection

Explore

The homepage should be available at https://home.127-0-0-1.nip.io (ignore the security warning because we don't have valid certificates).

Clean up

Delete the cluster:

k3d cluster delete homelab-dev