- Estrutura Terraform para ER605/Omada - Ansible inventory e role base para Dockerino - Docker Compose files para todos os serviços do Dockerino - Docker Compose para Media stack (Jellyfin, Sonarr, Radarr, etc) - Documentação ARCHITECTURE.md e NEXT_STEPS.md (via Héstia)
3.8 KiB
3.8 KiB
Homelab — Infraestrutura como Código
Guardiã: Gaia (Agente Hermes) Mantido por: João Paulo Ferreira (jp@iamferreirajp.com) Repositório Base: gaia/homelab
Visão Geral
Este repositório contém toda a infraestrutura do homelab em formato de Infraestrutura como Código (IaC). O objetivo é ter todo o ambiente versionado, documentado e reproduzível.
Hardware do Homelab
| Máquina | IP | Função Principal |
|---|---|---|
| TrueNAS | 10.0.0.30 | NAS, n8n, Uptime Kuma |
| Proxmox | 10.0.0.20 | Hypervisor (VMs) |
| Dockerino | 10.0.0.50 | Docker Host (NPM, AdGuard, etc) |
| Media | 10.0.0.36 | Jellyfin, Sonarr, Radarr, etc |
| Home Assistant | 10.0.0.100 | Automação residencial |
| ER605 (Omada) | 10.0.0.1 | Router/Gateway |
Topologia de Rede
- VLAN1 (Infra): 10.0.0.0/24 — Servidores
- VLAN10 (Geral): 10.0.10.0/24 — Computadores, celulares
- VLAN20 (IOT): 10.0.20.0/24 — Dispositivos IoT
- VLAN30 (Guests): 10.0.30.0/24 — Visitantes
Estrutura do Repositório
homelab/
├── terraform/ # Terraform para recursos de nuvem/rede
│ ├── er605/ # Router TP-Link ER605 (Omada Controller)
│ ├── truenas/ # TrueNAS
│ ├── proxmox/ # Proxmox
│ └── adguard/ # AdGuard Home
├── ansible/ # Ansible para configuração de VMs
│ ├── roles/ # Roles reutilizáveis
│ └── playbooks/ # Playbooks principais
├── docker/ # Docker Compose files
│ ├── dockerino/ # Stack do Dockerino (10.0.0.50)
│ │ ├── nginx/ # Nginx Proxy Manager
│ │ ├── adguard/ # AdGuard Home
│ │ ├── outline/ # Outline Wiki
│ │ ├── bookstack/ # BookStack
│ │ └── ...
│ └── media/ # Stack de mídia (10.0.0.36)
│ └── docker-compose.yml
└── docs/ # Documentação adicional
├── ARCHITECTURE.md # Arquitetura detalhada
└── NEXT_STEPS.md # Próximos passos
Quick Start
Clonar o Repositório
git clone https://gitea.hackerfortress.cc/gaia/homelab.git
cd homelab
Aplicar Terraform
cd terraform/er605
terraform init
terraform plan
terraform apply
Aplicar Ansible
cd ansible
ansible-playbook playbooks/setup-dockerino.yml
Subir Docker Stacks
cd docker/dockerino/nginx
docker compose up -d
Serviços
Dockerino (10.0.0.50)
| Serviço | Porta | Domínio |
|---|---|---|
| Nginx Proxy Manager | 80, 443 | proxy.hackerfortress.cc |
| AdGuard Home | 3000 | adguard.hackerfortress.cc |
| Outline Wiki | 3001 | outline.hackerfortress.cc |
| BookStack | 8082 | bookstack.hackerfortress.cc |
| Homer | 8090 | (internal) |
| HomeBox | 3100 | homebox.hackerfortress.cc |
| FlatNotes | 8089 | flatnotes.hackerfortress.cc |
| Picsur | 8091 | picsur.hackerfortress.cc |
| Speedtest | 8765 | speedtest.hackerfortress.cc |
| Omada Controller | 8043 | omada.hackerfortress.cc |
| Twingate | - | VPN |
Media (10.0.0.36)
| Serviço | Porta | Domínio |
|---|---|---|
| Jellyfin | 8096 | jellyfin.hackerfortress.cc |
| Sonarr | 8989 | sonarr.hackerfortress.cc |
| Radarr | 7878 | radarr.hackerfortress.cc |
| Prowlarr | 9696 | prowlarr.hackerfortress.cc |
| Bazarr | 6767 | bazarr.hackerfortress.cc |
| qBittorrent | 5080 | qbittorrent.hackerfortress.cc |
TrueNAS (10.0.0.30)
| Serviço | Porta |
|---|---|
| SSH | 22 |
| WebUI | 443 |
| n8n | 30109 |
| Uptime Kuma | 31050 |
Mantenedores
- Gaia — Guardiã da IaC (este repositório)
- Héstia — Documentação e arquitetura original
Licença
MIT