KI-AGENT: Uninstall für Selfhost-Setup ergänzen
All checks were successful
Build and Push Docker Images / build-backend (push) Successful in 12s
Build and Push Docker Images / build-frontend (push) Successful in 11s
Build and Push Docker Images / build-docs (push) Successful in 11s
Build and Push Docker Images / build-website (push) Successful in 11s
All checks were successful
Build and Push Docker Images / build-backend (push) Successful in 12s
Build and Push Docker Images / build-frontend (push) Successful in 11s
Build and Push Docker Images / build-docs (push) Successful in 11s
Build and Push Docker Images / build-website (push) Successful in 11s
This commit is contained in:
@@ -9,6 +9,8 @@ COMPOSE_FILE="${FEDEO_COMPOSE_FILE:-$ROOT_DIR/docker-compose.yml}"
|
||||
MODE=""
|
||||
START_STACK="ask"
|
||||
FORCE="false"
|
||||
UNINSTALL="false"
|
||||
PURGE="false"
|
||||
TTY_INPUT="${FEDEO_TTY_INPUT:-/dev/tty}"
|
||||
TTY_FD=""
|
||||
|
||||
@@ -53,6 +55,8 @@ Nutzung:
|
||||
bash scripts/selfhost-setup.sh --simple
|
||||
bash scripts/selfhost-setup.sh --advanced
|
||||
bash scripts/selfhost-setup.sh --simple --start
|
||||
bash scripts/selfhost-setup.sh --uninstall
|
||||
bash scripts/selfhost-setup.sh --uninstall --purge
|
||||
|
||||
Optionen:
|
||||
--simple Kurzer Assistent mit lokalen Diensten und sicheren Defaults
|
||||
@@ -60,6 +64,8 @@ Optionen:
|
||||
--start Startet den Stack nach dem Schreiben der Konfiguration
|
||||
--no-start Schreibt nur Konfiguration und Verzeichnisse
|
||||
--force Überschreibt eine vorhandene .env ohne Rückfrage
|
||||
--uninstall Stoppt und entfernt den Docker-Compose-Stack
|
||||
--purge Entfernt beim Uninstall zusätzlich .env und lokale Datenverzeichnisse
|
||||
USAGE
|
||||
}
|
||||
|
||||
@@ -80,6 +86,12 @@ while [[ $# -gt 0 ]]; do
|
||||
--force)
|
||||
FORCE="true"
|
||||
;;
|
||||
--uninstall)
|
||||
UNINSTALL="true"
|
||||
;;
|
||||
--purge)
|
||||
PURGE="true"
|
||||
;;
|
||||
-h|--help)
|
||||
usage
|
||||
exit 0
|
||||
@@ -385,7 +397,80 @@ prepare_directories() {
|
||||
chmod 600 "$ROOT_DIR/traefik/letsencrypt/acme.json"
|
||||
}
|
||||
|
||||
uninstall_stack() {
|
||||
need_file "$COMPOSE_FILE"
|
||||
|
||||
if [[ ! -f "$ENV_FILE" ]]; then
|
||||
echo "Keine .env gefunden. Docker Compose wird mit Standardwerten ausgeführt."
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "FEDEO Selfhost Uninstall"
|
||||
echo "Compose-Datei: $COMPOSE_FILE"
|
||||
echo
|
||||
|
||||
if [[ "$FORCE" != "true" ]]; then
|
||||
if ! yes_no "Docker-Compose-Stack stoppen und Container/Netzwerke entfernen?" "n"; then
|
||||
echo "Abgebrochen."
|
||||
exit 0
|
||||
fi
|
||||
fi
|
||||
|
||||
if [[ -f "$ENV_FILE" ]]; then
|
||||
compose_stack down --remove-orphans
|
||||
else
|
||||
compose -f "$COMPOSE_FILE" down --remove-orphans
|
||||
fi
|
||||
|
||||
if [[ "$PURGE" != "true" ]]; then
|
||||
echo
|
||||
echo "Uninstall abgeschlossen. Lokale Daten und .env wurden behalten."
|
||||
echo "Für vollständiges Entfernen erneut mit --uninstall --purge ausführen."
|
||||
return
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "Achtung: --purge entfernt lokale Datenbanken, Dateien, Matrix-Daten, Zertifikate und .env."
|
||||
echo "Betroffene Pfade:"
|
||||
echo " $ENV_FILE"
|
||||
echo " $ROOT_DIR/postgres"
|
||||
echo " $ROOT_DIR/minio"
|
||||
echo " $ROOT_DIR/matrix/postgres"
|
||||
echo " $ROOT_DIR/matrix/synapse"
|
||||
echo " $ROOT_DIR/traefik/letsencrypt"
|
||||
echo " $ROOT_DIR/traefik/logs"
|
||||
|
||||
if [[ "$FORCE" != "true" ]]; then
|
||||
if ! yes_no "Diese lokalen Daten endgültig löschen?" "n"; then
|
||||
echo "Daten wurden behalten."
|
||||
return
|
||||
fi
|
||||
fi
|
||||
|
||||
rm -rf \
|
||||
"$ENV_FILE" \
|
||||
"$ROOT_DIR/postgres" \
|
||||
"$ROOT_DIR/minio" \
|
||||
"$ROOT_DIR/matrix/postgres" \
|
||||
"$ROOT_DIR/matrix/synapse" \
|
||||
"$ROOT_DIR/traefik/letsencrypt" \
|
||||
"$ROOT_DIR/traefik/logs"
|
||||
|
||||
echo
|
||||
echo "Uninstall inklusive lokaler Daten abgeschlossen."
|
||||
}
|
||||
|
||||
main() {
|
||||
if [[ "$UNINSTALL" == "true" ]]; then
|
||||
uninstall_stack
|
||||
return
|
||||
fi
|
||||
|
||||
if [[ "$PURGE" == "true" ]]; then
|
||||
echo "--purge kann nur zusammen mit --uninstall verwendet werden." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
need_file "$COMPOSE_FILE"
|
||||
need_file "$ENV_EXAMPLE"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user