Güncelleme ve geçiş: İmajı geri alma
Amaç ve sonuç
Bölüm başlığı “Amaç ve sonuç”Sayfaya özel iş akışını tamamlayın: Güncelleme ve geçiş: İmajı geri alma. Bu prosedür şunları kullanır: PREVIOUS_IMAGE · pg_restore --exit-on-error · discvault.failed- · DISCVAULT_IMAGE.
Geçerli olduğu alan
Bölüm başlığı “Geçerli olduğu alan”Bu sayfa yalnızca şunlar için geçerlidir: Güncelleme ve geçiş: İmajı geri alma (Docker · Unraid). Kanal ve veri sınırları: DiscVault · ghcr.io/helmerznl/discvault:latest; önceki imajı başlatmadan önce eşleşen verileri geri yükleyin; PostgreSQL /data; DiscVault · ghcr.io/helmerznl/discvault:beta; önceki imajı başlatmadan önce eşleşen verileri geri yükleyin; PostgreSQL /data. Sayfaya özel denetim noktaları: PREVIOUS_IMAGE · pg_restore --exit-on-error · discvault.failed- · DISCVAULT_IMAGE.
DiscVault v26 kararlı
Bölüm başlığı “DiscVault v26 kararlı”- DiscVault ·
ghcr.io/helmerznl/discvault:latest - önceki imajı başlatmadan önce eşleşen verileri geri yükleyin
- PostgreSQL
/data
DiscVault v26 beta
Bölüm başlığı “DiscVault v26 beta”- DiscVault ·
ghcr.io/helmerznl/discvault:beta - önceki imajı başlatmadan önce eşleşen verileri geri yükleyin
- PostgreSQL
/data
Ön koşullar
Bölüm başlığı “Ön koşullar”- eşleşen yedek kümesi
PREVIOUS_IMAGE
Prosedür
Bölüm başlığı “Prosedür”- Durdurun:
next-apinext-workernext-mcp - Geri yükleyin:
/data - Geri yükleyin: PostgreSQL ·
pg_restore --exit-on-error - Başlatın:
PREVIOUS_IMAGE→ API → MCP
Komutlar ve ayarlar
Bölüm başlığı “Komutlar ve ayarlar”Her iki kanal
Bölüm başlığı “Her iki kanal”set -euo pipefailBACKUP_ID=20260714T180000Zcd /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/.envENV_TMP="$(mktemp "$ENV_FILE.restore.XXXXXX")"trap 'rm -f "$ENV_TMP"' EXITawk -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-apimv /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 postgresdocker 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-apicurl --fail http://localhost:6080/api/next/healthdocker compose --env-file .env -p discvault -f compose.yaml \ up -d --force-recreate next-worker next-mcpdocker compose --env-file .env -p discvault -f compose.yaml psmv "$ENV_TMP" "$ENV_FILE"trap - EXITBeklenen sonuç
Bölüm başlığı “Beklenen sonu甪unun sonucunu kabul edin: Güncelleme ve geçiş: İmajı geri alma yalnızca aşağıdaki sonuçların tümü doğru olduğunda: PREVIOUS_IMAGE · @sha256:; önceki imajı başlatmadan önce eşleşen verileri geri yükleyin; kitaplık sayıları ve medya örneği seçilen yedekle eşleşir. Sayfaya özel denetim noktaları: PREVIOUS_IMAGE · pg_restore --exit-on-error · discvault.failed- · DISCVAULT_IMAGE.
PREVIOUS_IMAGE·@sha256:- önceki imajı başlatmadan önce eşleşen verileri geri yükleyin
- kitaplık sayıları ve medya örneği seçilen yedekle eşleşir
Güvenlik ve geri alma
Bölüm başlığı “Güvenlik ve geri alma”Sonraki adım
Bölüm başlığı “Sonraki adım”Güncelleme ve geçiş: DiscVault 26 geçişi
Kaynak ve durum
Bölüm başlığı “Kaynak ve durum”helmerzNL/DiscVault@6d27c689ac21- Kaynak ve durum:
2026-07-14 - DiscVault Docs:
0.1.0
