my-homelab-configs/homelab.yml

128 lines
3.4 KiB
YAML

# Canonical non-secret homelab inventory.
# Keep hostnames, IPs, ports, and public names here before copying them into
# scripts, Terraform variables, runbooks, or service docs.
metadata:
main_script: jeannie
owner_user: jv
domain:
base: lab2025.duckdns.org
public_url: https://lab2025.duckdns.org
gitea_url: https://lab2025.duckdns.org/git/
subdomains:
- demos.lab2025.duckdns.org
- heimdall.lab2025.duckdns.org
- grafana.lab2025.duckdns.org
- prometheus.lab2025.duckdns.org
- alertmanager.lab2025.duckdns.org
- argocd.lab2025.duckdns.org
- n8n.lab2025.duckdns.org
- prowlarr.lab2025.duckdns.org
- sonarr.lab2025.duckdns.org
- radarr.lab2025.duckdns.org
- qbittorrent.lab2025.duckdns.org
- kapowarr.lab2025.duckdns.org
- suwayomi.lab2025.duckdns.org
- maintainerr.lab2025.duckdns.org
network:
lan_cidr: 192.168.100.0/24
lan_ip_prefix: 192.168.100.
metallb:
traefik_ip: 192.168.100.240
address_pool: 192.168.100.240-192.168.100.250
tailscale_cgnat_cidr: 100.64.0.0/10
hosts:
debian:
role: control-plane
user: jv
lan_ip: 192.168.100.73
tailscale_ip: 100.85.138.30
docker_root: /data/docker
data_root: /data
kubeconfig: /home/jv/.kube/config
rpi4:
role: dns-edge-worker
user: jv
lan_ip: 192.168.100.89
tailscale_ip: 100.77.80.72
docker_nvme_root: /nvme-storage/docker
docker_fallback_root: /var/lib/docker
opi5_pimox:
role: pimox
user: jv
lan_ip: 192.168.100.80
bridge: vmbr0
worker_storage: opi5_ssd
template_storage: local
oci_edge:
role: public-edge
user: ubuntu
public_ip: 132.145.170.74
tailscale_ip: 100.118.255.19
install_dir: /opt/homelab-edge
services:
gitea:
host: debian
install_dir: /data/homelab-gitea
http_port: 3000
ssh_port: 32222
root_url: https://lab2025.duckdns.org/git/
ssh_remote: ssh://git@192.168.100.73:32222/jv/my-homelab-configs.git
gitops_mirror:
host: debian
path: /home/jv/git-server/my-homelab-configs.git
ssh_url: ssh://jv@192.168.100.73/home/jv/git-server/my-homelab-configs.git
local_registry:
host: debian
endpoint: 192.168.100.73:30500
provisioning:
host: debian
http_port: 8088
preseed_url: http://192.168.100.73:8088/preseed/debian13-arm64-worker.cfg
rescue_url: http://192.168.100.73:8088/rescue/
ollama:
host: debian
url: http://192.168.100.73:11434
rpi_dns:
host: rpi4
pihole_dns_port: 53
pihole_web_port: 8081
uptime_kuma_port: 3001
unbound_container_port: 53
adlists_file: infra/rpi-services/adlists.txt
local_dns_records_file: infra/rpi-services/local-dns-records.txt
cname_records_file: infra/rpi-services/cname-records.txt
static_dhcp_hosts_file: infra/rpi-services/static-dhcp-hosts.txt
uptime_kuma_seed_file: infra/rpi-services/uptime-kuma-monitors.json
arr:
host: debian
prowlarr_port: 9696
radarr_port: 7878
sonarr_port: 8989
qbittorrent_port: 8080
kapowarr_port: 5656
suwayomi_port: 4567
maintainerr_port: 6246
flaresolverr_port: 8191
traefik:
host: kubernetes
load_balancer_ip: 192.168.100.240
http_port: 80
pimox:
template_vmid: 9000
worker_base_vmid: 9010
default_worker_count: 1
worker_name_prefix: pimox-worker
ai_gateway:
provider: ollama
enabled: true
url: http://192.168.100.73:11434
model: qwen2.5:0.5b
timeout_seconds: 20
knowledge_index_dir: /data/homelab-ai/index