# homelab-config Local config on zfs at `/tank/git/homelab-config` Requires: - set tailscale api key at `./tsdproxy/auth.key` # Setting up proxmox - https://docs.localhake.com/infrastructure/proxmox-install - [post install script](https://community-scripts.github.io/ProxmoxVE/scripts?id=post-pve-install) - ZFS ``` zpool import tank ``` - tailscale, remember to disable key expiry in admin console ``` curl -fsSL https://tailscale.com/install.sh | sh tailscale up tailscale serve --bg https+insecure://localhost:8006 ``` - [GPU](https://digitalspaceport.com/proxmox-lxc-gpu-passthru-setup-guide/) ``` apt update && apt upgrade apt install pve-headers-$(uname -r) build-essential # Install nvidia linux driver, select mit/gpl over proprietary wget HTTP://URLHERE chmod +x xxxxx.run ./xxxxx.run --dkms # No need to update lxc config file, helper script has option to enable gpu passthrough pct push 100 xxxxx.run /root/xxxxx.run pct enter 100 chmod +x ./xxxxx.run ./xxxxx.run --no-kernel-modules ``` - [Docker LXC](https://community-scripts.github.io/ProxmoxVE/scripts?id=docker) - Install after setting up gpu on host to automate some passthrough. Still need to push and run driver installer. ``` # bind mount zfs datasets to lxc pct set 100 -mp0 /tank/git,mp=/tank/git pct set 100 -mp1 /tank/media,mp=/tank/media pct set 100 -mp2 /tank/services,mp=/tank/services ``` - update router to forward traffic to docker lxc ip (network settings -> nat -> port forwarding) - [nvidia container toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html) ``` vi /etc/nvidia-container-runtime/config.toml #no-cgroups = false to no-cgroups = true ``` - portainer - https://github.com/nvengal/homelab-core - generate `CLOUDFLARE_API_KEY` for dns sync - build `homelab-core/caddy:latest` in portainer ui - https://git.nvengal.com/nvengal/immich - https://git.nvengal.com/nvengal/media-stack # Notes - [adguard + tailscale](https://blog.dmcc.io/journal/tailscale-adguard-dns/)