Add Docker backup script and fix Gitea update merge conflicts
This commit is contained in:
@@ -0,0 +1,14 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
BACKUP_DIR="/NFS/BACKUPS"
|
||||||
|
DATE=$(date +%Y%m%d)
|
||||||
|
mkdir -p $BACKUP_DIR
|
||||||
|
|
||||||
|
docker run --rm -v jellyfin_data:/source -v $BACKUP_DIR:/backup alpine \
|
||||||
|
tar czf /backup/jellyfin-$DATE.tar.gz /source
|
||||||
|
docker run --rm -v shaarli_data:/source -v $BACKUP_DIR:/backup alpine \
|
||||||
|
tar czf /backup/shaarli-$DATE.tar.gz /source
|
||||||
|
|
||||||
|
# Vérification
|
||||||
|
ls -lh $BACKUP_DIR | grep -E "jellyfin|shaarli"
|
||||||
Executable → Regular
+14
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
# ─── Charger la configuration commune ─────────────────────────────────────────
|
# ─── Charger la configuration commune ─────────────────────────────────────────
|
||||||
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
||||||
CONFIG_FILE="${CONFIG_FILE:-$SCRIPT_DIR/gitea-scripts.conf}"
|
CONFIG_FILE="${CONFIG_FILE:-$SCRIPT_DIR/gitea-scripts.conf}"
|
||||||
@@ -21,6 +22,9 @@ fi
|
|||||||
|
|
||||||
# ─── Configuration locale (après chargement conf, permet surcharge env) ──────
|
# ─── Configuration locale (après chargement conf, permet surcharge env) ──────
|
||||||
# Chemins et conteneurs
|
# Chemins et conteneurs
|
||||||
|
=======
|
||||||
|
# ─── Configuration (modifiable) ─────────────────────────────────────────────
|
||||||
|
>>>>>>> 63e7debb52659e8424039f6ef7c6f6fb7d29144e
|
||||||
COMPOSE_DIR="${COMPOSE_DIR:-$HOME/dev/git/outils/docker/gitea}"
|
COMPOSE_DIR="${COMPOSE_DIR:-$HOME/dev/git/outils/docker/gitea}"
|
||||||
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
COMPOSE_FILE="${COMPOSE_FILE:-docker-compose.yml}"
|
||||||
APP_SERVICE="${APP_SERVICE:-gitea_server}"
|
APP_SERVICE="${APP_SERVICE:-gitea_server}"
|
||||||
@@ -47,6 +51,9 @@ NTPY_TOPIC="${NTPY_TOPIC:-}"
|
|||||||
# Santé
|
# Santé
|
||||||
HEALTH_CHECK_URL="${HEALTH_CHECK_URL:-http://localhost:3000}"
|
HEALTH_CHECK_URL="${HEALTH_CHECK_URL:-http://localhost:3000}"
|
||||||
HEALTH_CHECK_TIMEOUT="${HEALTH_CHECK_TIMEOUT:-30}"
|
HEALTH_CHECK_TIMEOUT="${HEALTH_CHECK_TIMEOUT:-30}"
|
||||||
|
DB_CONTAINER="${DB_CONTAINER:-gitea_db}"
|
||||||
|
DB_NAME="${DB_NAME:-gitea}"
|
||||||
|
DB_ROOT_PASSWORD="${DB_ROOT_PASSWORD:-gitea}"
|
||||||
|
|
||||||
# Lock file
|
# Lock file
|
||||||
LOCK_DIR="${LOCK_DIR:-/tmp}"
|
LOCK_DIR="${LOCK_DIR:-/tmp}"
|
||||||
@@ -193,6 +200,7 @@ fi
|
|||||||
BACKUP_PRE_DIR="${BACKUP_PRE_DIR:-/tmp/gitea-pre-update-$(date +%Y%m%d-%H%M%S)}"
|
BACKUP_PRE_DIR="${BACKUP_PRE_DIR:-/tmp/gitea-pre-update-$(date +%Y%m%d-%H%M%S)}"
|
||||||
mkdir -p "$BACKUP_PRE_DIR"
|
mkdir -p "$BACKUP_PRE_DIR"
|
||||||
|
|
||||||
|
<<<<<<< HEAD
|
||||||
log "💾 Backup DB pré-update vers $BACKUP_PRE_DIR"
|
log "💾 Backup DB pré-update vers $BACKUP_PRE_DIR"
|
||||||
if docker ps --format '{{.Names}}' | grep -q "^${DB_CONTAINER}$"; then
|
if docker ps --format '{{.Names}}' | grep -q "^${DB_CONTAINER}$"; then
|
||||||
docker exec "$DB_CONTAINER" mysqldump \
|
docker exec "$DB_CONTAINER" mysqldump \
|
||||||
@@ -204,6 +212,12 @@ if docker ps --format '{{.Names}}' | grep -q "^${DB_CONTAINER}$"; then
|
|||||||
else
|
else
|
||||||
log "⚠️ Conteneur $DB_CONTAINER non trouvé — pas de backup pré-update"
|
log "⚠️ Conteneur $DB_CONTAINER non trouvé — pas de backup pré-update"
|
||||||
fi
|
fi
|
||||||
|
=======
|
||||||
|
log "💾 Backup pré-update vers $BACKUP_PRE_DIR"
|
||||||
|
docker exec "$DB_CONTAINER" mysqldump -u root -p"$DB_ROOT_PASSWORD" "$DB_NAME" > "$BACKUP_PRE_DIR/gitea_db.sql" 2>/dev/null || {
|
||||||
|
log "⚠️ Backup pré-update DB échoué, on continue quand même"
|
||||||
|
}
|
||||||
|
>>>>>>> 63e7debb52659e8424039f6ef7c6f6fb7d29144e
|
||||||
|
|
||||||
# Recréer le conteneur avec la nouvelle image
|
# Recréer le conteneur avec la nouvelle image
|
||||||
log "🚀 Redémarrage du conteneur avec la nouvelle image..."
|
log "🚀 Redémarrage du conteneur avec la nouvelle image..."
|
||||||
|
|||||||
Reference in New Issue
Block a user