113 lines
2.3 KiB
Markdown
113 lines
2.3 KiB
Markdown
# DynDNS Docker für Hetzner DNS
|
|
|
|
Ein Docker-basiertes Dynamic DNS System für die Hetzner DNS Console.
|
|
|
|
## Features
|
|
|
|
- Automatische Erkennung von IP-Änderungen
|
|
- Integration mit Hetzner DNS API
|
|
- Konfigurierbare Check-Intervalle
|
|
- Docker-Container für einfaches Deployment
|
|
- Umgebungsvariablen für sichere Konfiguration
|
|
|
|
## Voraussetzungen
|
|
|
|
- Docker und Docker Compose
|
|
- Hetzner DNS API Token
|
|
- Domain bei Hetzner DNS verwaltet
|
|
|
|
## Installation
|
|
|
|
### 1. Repository klonen
|
|
|
|
```bash
|
|
git clone <repository-url>
|
|
cd dyndns-docker
|
|
```
|
|
|
|
### 2. Konfiguration
|
|
|
|
Kopieren Sie die Beispiel-Konfigurationsdatei und passen Sie sie an:
|
|
|
|
```bash
|
|
cp .env.example .env
|
|
```
|
|
|
|
Bearbeiten Sie die `.env` Datei mit Ihren Daten:
|
|
|
|
```env
|
|
HETZNER_API_TOKEN=your_api_token_here
|
|
DOMAIN=example.com
|
|
RECORD_NAME=home
|
|
RECORD_TYPE=A
|
|
CHECK_INTERVAL=300
|
|
```
|
|
|
|
### 3. Container starten
|
|
|
|
```bash
|
|
docker-compose up -d
|
|
```
|
|
|
|
## Konfiguration
|
|
|
|
### Umgebungsvariablen
|
|
|
|
| Variable | Beschreibung | Beispiel |
|
|
|----------|-------------|----------|
|
|
| `HETZNER_API_TOKEN` | Hetzner DNS API Token | `abc123...` |
|
|
| `ZONE_ID` | Hetzner DNS Zone ID (optional, wird automatisch ermittelt) | `xyz789...` |
|
|
| `DOMAIN` | Domain-Name | `example.com` |
|
|
| `RECORD_NAME` | DNS Record Name | `home` oder `@` für Root |
|
|
| `RECORD_TYPE` | DNS Record Typ | `A` (IPv4) oder `AAAA` (IPv6) |
|
|
| `CHECK_INTERVAL` | Prüfintervall in Sekunden | `300` (5 Minuten) |
|
|
| `LOG_LEVEL` | Log-Level | `INFO`, `DEBUG`, `WARNING` |
|
|
|
|
## Verwendung
|
|
|
|
### Container Status prüfen
|
|
|
|
```bash
|
|
docker-compose ps
|
|
```
|
|
|
|
### Logs anzeigen
|
|
|
|
```bash
|
|
docker-compose logs -f
|
|
```
|
|
|
|
### Container neu starten
|
|
|
|
```bash
|
|
docker-compose restart
|
|
```
|
|
|
|
### Container stoppen
|
|
|
|
```bash
|
|
docker-compose down
|
|
```
|
|
|
|
## Hetzner DNS API Token erstellen
|
|
|
|
1. Melden Sie sich im [Hetzner DNS Console](https://dns.hetzner.com/) an
|
|
2. Gehen Sie zu "API Tokens"
|
|
3. Erstellen Sie einen neuen API Token mit Lese- und Schreibrechten
|
|
4. Kopieren Sie den Token in Ihre `.env` Datei
|
|
|
|
## Versioning
|
|
|
|
Dieses Projekt folgt einer vereinfachten Versionierungsstruktur:
|
|
- **0.1**: Große Änderungen (neue Features, Breaking Changes)
|
|
- **0.0.1**: Kleine Änderungen (Bugfixes, kleinere Verbesserungen)
|
|
- **1.x**: Major Releases (nur nach Anweisung)
|
|
|
|
## Lizenz
|
|
|
|
MIT License
|
|
|
|
## Support
|
|
|
|
Bei Fragen oder Problemen erstellen Sie bitte ein Issue im Repository.
|