ed786daa9a8229b250c7475cbc8686b44b64a5db
Portainer Stack Backup Script
Dieses Skript sichert alle Docker-Compose-Stacks aus Portainer über die Portainer-API. Es exportiert immer die aktuell aktive Compose-Version jedes Stacks und speichert sie übersichtlich nach Stack-Namen.
Optional kann das Ergebnis zusätzlich als tar.gz archiviert werden.
Features
- Backup aller Portainer Stacks
- Export der aktuellen
docker-compose.ymlje Stack - Optionales
tar.gz-Archiv - Geeignet für:
- manuelle Nutzung
- Cronjobs
- Server / Docker-Hosts
Voraussetzungen
Auf dem System müssen folgende Tools vorhanden sein:
| Tool | Benötigt |
|---|---|
bash |
ja |
curl |
ja |
jq |
ja |
tar |
nur wenn CREATE_ARCHIVE=1 |
Installation
Skript ausführbar machen:
chmod +x shell_portainer_stack_backup.sh
Konfiguration (settings.env)
Die Datei settings.env muss im selben Verzeichnis wie das Skript liegen.
Beispiel:
# Portainer connection
PORTAINER_URL="https://192.168.178.25:9443"
# Portainer API key
API_KEY="ptr_xxxxxxxxxxxxxxxxxxxxxx"
# Base output directory
OUT_DIR="/home/thorsten/Portainer_Backup"
# Create archive?
# 1 = create tar.gz and remove directory afterwards
# 0 = keep directory only
CREATE_ARCHIVE=1
Hinweise & Einschränkungen
- Das Skript sichert nur die Stack-Definitionen, keine Volumes / Daten
- Git-basierte Stacks werden als aktuelle, aufgelöste Compose-Datei gesichert
- Der API-Key benötigt mindestens:
- Zugriff auf Stacks
- Zugriff auf das jeweilige Endpoint
Description
Languages
Shell
100%