| caddy | ||
| homepage | ||
| infomaniak | ||
| whisper-webui | ||
| whisper-webui-jetson | ||
| adguard-dns-rewrites.txt | ||
| AI-SETUP-INSTRUCTIONS.md | ||
| CHAT-SUMMARY-COMPLETE.md | ||
| CHAT-SUMMARY.md | ||
| docker-compose.yml | ||
| first-boot.sh | ||
| README.md | ||
| setup.sh | ||
Jetson Orin Nano 8GB - Complete Home Hub
Übersicht
Alles lokal, keine Cloud, volle Kontrolle.
| Domain | Service | Beschreibung |
|---|---|---|
home.lan |
Home Assistant | Smart Home Zentrale |
adguard.lan |
AdGuard Home | DNS + Werbeblocker |
whisper.lan |
Whisper WebUI | Sprache → Text (GPU) |
jellyfin.lan |
Jellyfin | Media Server |
portainer.lan |
Portainer | Docker Management |
vpn.lan |
WireGuard Easy | VPN für unterwegs |
files.lan |
FileBrowser | Private Cloud |
sync.lan |
Syncthing | Dateisync |
ollama.lan |
Ollama | Lokale LLMs |
Hardware Setup
5G Antenne ──► Nighthawk M5 (DHCP, DNS=192.168.1.50)
│
Netgear Switch
│
└── Jetson Orin Nano @ TV
├── eth0: 192.168.1.50
├── USB: TP-Link WiFi → AP "Home.8"
└── HDMI: 4K TV
Installation
1. JetPack flashen (am PC mit Ubuntu)
# SDK Manager: https://developer.nvidia.com/sdk-manager
# Jetson in Recovery Mode (Power aus, Recovery halten, Power an)
sdkmanager
# → Jetson Orin Nano 8GB
# → JetPack 6.x
# → NVMe als Ziel
2. Nach erstem Boot
# Dateien auf Jetson kopieren
scp -r jetson-setup/ d@192.168.1.50:~/
# SSH zum Jetson
ssh d@192.168.1.50
# Setup ausführen
cd ~/jetson-setup
chmod +x setup.sh
sudo ./setup.sh
sudo reboot
3. Nach Reboot
cd ~/docker
docker-compose up -d
# Logs
docker-compose logs -f
4. AdGuard DNS Rewrites einrichten
- Öffne
http://192.168.1.50:3000 - Setup durchführen
- Settings → DNS rewrites
- Alle Einträge aus
adguard-dns-rewrites.txthinzufügen
5. Nighthawk DNS ändern
Im Nighthawk Router: DNS auf 192.168.1.50 setzen
Jetzt funktionieren alle .lan Domains!
Zugriff
Im LAN
Einfach im Browser:
http://home.lanhttp://adguard.lanhttp://whisper.lanhttp://portainer.lan- etc.
Unterwegs (VPN)
- Öffne
http://vpn.lan(Passwort: 123 - ÄNDERN!) - Neuen Client erstellen
- QR-Code mit WireGuard App scannen
- Verbinden - fertig, alle .lan Domains erreichbar
Wichtig: WG_HOST in docker-compose.yml auf deine externe IP/DynDNS setzen!
Services im Detail
Home Assistant (home.lan)
Voice Assistant einrichten:
- Settings → Devices & Services → Add Integration
- "Wyoming Protocol" hinzufügen
- Whisper:
localhost:10300 - Piper TTS:
localhost:10200
Whisper WebUI (whisper.lan)
- Sprache aufnehmen im Browser
- Dateien hochladen
- Läuft 100% lokal auf GPU
- Deutsch, Englisch, etc.
FileBrowser (files.lan)
Private Cloud für alle Dateien:
- Default Login:
admin/admin - Zugriff auf
/home/d/
Syncthing (sync.lan)
Dateien zwischen Geräten synchronisieren:
- Handy ↔ Jetson ↔ PC
- Verschlüsselt, kein Server in der Mitte
Portainer (portainer.lan)
Docker Management mit GUI:
- Container starten/stoppen
- Logs anschauen
- Compose verwalten
Dateistruktur
~/docker/
├── docker-compose.yml
├── caddy/
│ └── Caddyfile
├── homeassistant/config/
├── adguard/conf/
├── whisper/models/
├── jellyfin/config/
├── portainer/
├── wireguard/
├── filebrowser/
├── syncthing/
└── ollama/
Passwörter ändern!
# WiFi AP
sudo nano /etc/hostapd/hostapd.conf
# wpa_passphrase=NEUES_PASSWORT
sudo systemctl restart hostapd
# WireGuard
nano ~/docker/docker-compose.yml
# PASSWORD=NEUES_PASSWORT
docker-compose up -d wg-easy
Port Forwarding (für VPN von aussen)
Im Nighthawk Router:
- UDP 51820 → 192.168.1.50:51820
Whisper Modelle
| Modell | VRAM | Speed | Qualität |
|---|---|---|---|
| tiny | ~1GB | ⚡⚡⚡⚡ | ★★☆☆☆ |
| base | ~1GB | ⚡⚡⚡ | ★★★☆☆ |
| small | ~2GB | ⚡⚡ | ★★★★☆ |
| medium | ~5GB | ⚡ | ★★★★★ |
Ändern in docker-compose.yml:
environment:
- WHISPER_MODEL=small
Troubleshooting
Domains funktionieren nicht
# DNS Test
nslookup home.lan 192.168.1.50
# AdGuard läuft?
docker logs adguard
WiFi AP startet nicht
sudo systemctl status hostapd
sudo journalctl -u hostapd -f
iw dev
GPU nicht erkannt
# Test
docker run --rm --runtime=nvidia nvidia/cuda:11.4-base nvidia-smi
# Jetson Stats
sudo pip3 install jetson-stats
jtop
Container startet nicht
docker-compose logs <container-name>
docker-compose up <container-name> # ohne -d für live output
Updates
cd ~/docker
docker-compose pull
docker-compose up -d
Backup
# Alles
tar -czvf jetson-backup.tar.gz ~/docker/
# Nur Configs
tar -czvf ha-backup.tar.gz ~/docker/homeassistant/config
tar -czvf adguard-backup.tar.gz ~/docker/adguard/conf
Nützliche Befehle
# Alle Container Status
docker ps -a
# Ressourcen
docker stats
# Jetson GPU/CPU Monitor
jtop
# Logs live
docker-compose logs -f
# Neustart einzelner Service
docker-compose restart homeassistant
# Shell in Container
docker exec -it homeassistant bash