Μετάβαση στο περιεχόμενο

Ενημέρωση και μετεγκατάσταση: Επαναφορά εικόνας

Στόχος και αποτέλεσμα

Ενότητα «Στόχος και αποτέλεσμα»

Ολοκληρώστε τη ροή εργασίας της σελίδας για Ενημέρωση και μετεγκατάσταση: Επαναφορά εικόνας. Η διαδικασία χρησιμοποιεί PREVIOUS_IMAGE · pg_restore --exit-on-error · discvault.failed- · DISCVAULT_IMAGE.

Αυτή η σελίδα ισχύει μόνο για Ενημέρωση και μετεγκατάσταση: Επαναφορά εικόνας (Docker · Unraid). Τα όρια καναλιού και δεδομένων είναι: DiscVault · ghcr.io/helmerznl/discvault:latest; επαναφέρετε τα αντίστοιχα δεδομένα πριν εκκινήσετε την προηγούμενη εικόνα; PostgreSQL /data; DiscVault · ghcr.io/helmerznl/discvault:beta; επαναφέρετε τα αντίστοιχα δεδομένα πριν εκκινήσετε την προηγούμενη εικόνα; PostgreSQL /data. Σημεία ελέγχου της σελίδας: PREVIOUS_IMAGE · pg_restore --exit-on-error · discvault.failed- · DISCVAULT_IMAGE.

  • DiscVault · ghcr.io/helmerznl/discvault:latest
  • επαναφέρετε τα αντίστοιχα δεδομένα πριν εκκινήσετε την προηγούμενη εικόνα
  • PostgreSQL /data
  • DiscVault · ghcr.io/helmerznl/discvault:beta
  • επαναφέρετε τα αντίστοιχα δεδομένα πριν εκκινήσετε την προηγούμενη εικόνα
  • PostgreSQL /data
  • αντίστοιχο σύνολο αντιγράφων
  • PREVIOUS_IMAGE
  1. Διακόψτε: next-api next-worker next-mcp
  2. Επαναφέρετε: /data
  3. Επαναφέρετε: PostgreSQL · pg_restore --exit-on-error
  4. Εκκινήστε: PREVIOUS_IMAGE → API → MCP

Εντολές και ρυθμίσεις

Ενότητα «Εντολές και ρυθμίσεις»
Terminal window
set -euo pipefail
BACKUP_ID=20260714T180000Z
cd /opt/discvault
. "/srv/backups/discvault-$BACKUP_ID.env"
test -n "$PREVIOUS_IMAGE"
export DISCVAULT_IMAGE="$PREVIOUS_IMAGE"
docker pull "$DISCVAULT_IMAGE"
ENV_FILE=/opt/discvault/.env
ENV_TMP="$(mktemp "$ENV_FILE.restore.XXXXXX")"
trap 'rm -f "$ENV_TMP"' EXIT
awk -v image="$DISCVAULT_IMAGE" '
/^DISCVAULT_IMAGE=/ { print "DISCVAULT_IMAGE=" image; found=1; next }
{ print }
END { if (!found) exit 42 }
' "$ENV_FILE" > "$ENV_TMP"
chmod 0600 "$ENV_TMP"
docker compose --env-file .env -p discvault -f compose.yaml stop next-worker next-mcp next-api
mv /srv/discvault "/srv/discvault.failed-$(date -u +%Y%m%dT%H%M%SZ)"
tar --acls --xattrs -C /srv -xzf \
"/srv/backups/discvault-data-$BACKUP_ID.tgz"
docker compose --env-file .env -p discvault -f compose.yaml up -d postgres
docker compose --env-file .env -p discvault -f compose.yaml exec -T postgres \
sh -c 'dropdb --if-exists --force -U "$POSTGRES_USER" "$POSTGRES_DB"'
docker compose --env-file .env -p discvault -f compose.yaml exec -T postgres \
sh -c 'createdb -U "$POSTGRES_USER" "$POSTGRES_DB"'
docker compose --env-file .env -p discvault -f compose.yaml exec -T postgres \
sh -c 'pg_restore --exit-on-error --no-owner -U "$POSTGRES_USER" -d "$POSTGRES_DB"' \
< "/srv/backups/discvault-$BACKUP_ID.dump"
docker compose --env-file .env -p discvault -f compose.yaml up -d --force-recreate next-api
curl --fail http://localhost:6080/api/next/health
docker compose --env-file .env -p discvault -f compose.yaml \
up -d --force-recreate next-worker next-mcp
docker compose --env-file .env -p discvault -f compose.yaml ps
mv "$ENV_TMP" "$ENV_FILE"
trap - EXIT

Αναμενόμενο αποτέλεσμα

Ενότητα «Αναμενόμενο αποτέλεσμα»

Αποδεχθείτε το αποτέλεσμα για Ενημέρωση και μετεγκατάσταση: Επαναφορά εικόνας μόνο όταν ισχύουν όλα τα παρακάτω αποτελέσματα: PREVIOUS_IMAGE · @sha256:; επαναφέρετε τα αντίστοιχα δεδομένα πριν εκκινήσετε την προηγούμενη εικόνα; οι μετρήσεις βιβλιοθήκης και το δείγμα πολυμέσων ταιριάζουν με το επιλεγμένο αντίγραφο. Σημεία ελέγχου της σελίδας: PREVIOUS_IMAGE · pg_restore --exit-on-error · discvault.failed- · DISCVAULT_IMAGE.

  • PREVIOUS_IMAGE · @sha256:
  • επαναφέρετε τα αντίστοιχα δεδομένα πριν εκκινήσετε την προηγούμενη εικόνα
  • οι μετρήσεις βιβλιοθήκης και το δείγμα πολυμέσων ταιριάζουν με το επιλεγμένο αντίγραφο

Ασφάλεια και επαναφορά

Ενότητα «Ασφάλεια και επαναφορά»

Ενημέρωση και μετεγκατάσταση: Μετεγκατάσταση στο DiscVault 26