khuedoan-homelab/docs/installation/sandbox.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

1.6 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.

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).

See admin credentials for default passwords.

Clean up

Delete the cluster:

k3d cluster delete homelab-dev

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).