feat: added README.md

This commit is contained in:
Moritz Gutzeit 2026-03-18 10:14:18 +01:00
parent 5b567460ad
commit 90598a652b

146
README.md
View file

@ -0,0 +1,146 @@
# Home Server Management Scripts
Ein Skript-Satz zur Verwaltung von Docker Containern für einen Heimserver.
## Überblicke
Diese Repository enthält Shell-Skripte zur Verwaltung verschiedener Docker-Compose-Projekte:
- **drive_check.sh** Prüft die Festplatten des Server
- **restart_containers.sh** Neustart aller Container
- **restart_ddns.sh** Neustart von DDNS-Projekt
- **restart_forgejo.sh** Neustart von Forgejo (Gitlab Alternative)
- **restart_jellyfin.sh** Neustart von Jellyfin (Media Server)
- **restart_nextcloud.sh** Neustart von Nextcloud
- **restart_vaultwarden.sh** Neustart von Vaultwarden (Bitwarden Alternative)
- **start_containers.sh** Start aller Container
- **start_jellyfin.sh** Start von Jellyfin
- **stop_containers.sh** Stop aller Container
- **update_containers.sh** Automatisches Update aller Container
## Konfiguration
Die Docker-Compose-Projekte befinden sich unter `/opt/docker/`.
### Container-Liste
| Projekt | Verwendung |
|---------|----------|
| ddns | Dynamic DNS |
| forgejo | Git-Hosting (Gitlab Fork) |
| jellyfin | Media Server / Film Streaming |
| nextcloud | Cloud Storage |
| vaultwarden | Passwort-Manager (Bitwarden Fork) |
## Installation
### Voraussetzungen
- Docker Desktop oder Docker Engine
- Bash-Shell (z. B. Terminal, iterm2, zsh)
### Vorschau
1. Klonen Sie das Repository:
```bash
git clone <repository-url>
cd scripts
```
2. Stellen Sie sicher, dass `/opt/docker/` mit den Docker-Compose-Dateien existiert:
```bash
sudo chown -R $(whoami) /opt/docker
```
3. Vergeben Sie die Skripte die Ausführungsberechtigung:
```bash
chmod +x *.sh
```
## Nutzung
### Container Starten
Alle Container starten:
```bash
./start_containers.sh
```
Nur Jellyfin starten:
```bash
./start_jellyfin.sh
```
### Container Stoppen
Alle Container stoppen:
```bash
./stop_containers.sh
```
### Container Neustarten
Alle Container neu starten:
```bash
./restart_containers.sh
```
Nur spezifisches Projekt neu starten (Beispiel):
```bash
./restart_jellyfin.sh
```
### Container Update
Alle Container auf die neuesten Versions-Update prüfen und installieren:
```bash
./update_containers.sh
```
### Festplatte Prüfen
Festplattenstatus des Servers überprüfen:
```bash
./drive_check.sh
```
## Log-Aufzeichnung
Update-Benachrichtigungen werden in `/var/log/docker-update/` gespeichert:
- `{projekt-name}-update.log`
Beispiel: `nextcloud-update.log`
## Troubleshooting
### Container nicht starten
Überprüfen Sie die Log-Dateien für detaillierte Fehlermeldungen:
```bash
tail -f /var/log/docker-update/nextcloud-update.log
```
### Docker Problem
Neustarten Sie Docker vollständig:
```bash
./stop_containers.sh
./start_containers.sh
```
## Lizenz
Lizenz des Projekts auswählen.