Εγκατάσταση: Docker Compose
Στόχος και αποτέλεσμα
Ενότητα «Στόχος και αποτέλεσμα»Ολοκληρώστε τη ροή εργασίας της σελίδας για Εγκατάσταση: Docker Compose. Η διαδικασία χρησιμοποιεί release/v26-beta · app/deploy/next/docker-compose.yml · app/deploy/next/.env.example · DISCVAULT_NEXT_IMAGE · ghcr.io/helmerznl/discvault:beta · 6180:5000 · LEGACY_AUTH_ENABLED=true.
Ισχύει για
Ενότητα «Ισχύει για»Αυτή η σελίδα ισχύει μόνο για Εγκατάσταση: Docker Compose (Docker). Τα όρια καναλιού και δεδομένων είναι: DiscVault · ghcr.io/helmerznl/discvault:beta; release/v26-beta; discvault_next_deploy; 6180 → API 5000. Σημεία ελέγχου της σελίδας: release/v26-beta · app/deploy/next/docker-compose.yml · app/deploy/next/.env.example · DISCVAULT_NEXT_IMAGE · ghcr.io/helmerznl/discvault:beta · 6180:5000 · LEGACY_AUTH_ENABLED=true.
DiscVault v26 – beta
Ενότητα «DiscVault v26 – beta»- DiscVault ·
ghcr.io/helmerznl/discvault:beta release/v26-betadiscvault_next_deploy6180→ API5000
Προϋποθέσεις
Ενότητα «Προϋποθέσεις»- Docker Compose
v2 - OpenSSL
- εγγράψιμη μόνιμη αποθήκευση και ελεύθερος χώρος αντιγράφων
Διαδικασία
Ενότητα «Διαδικασία»- Εγκαταστήστε:
docker-compose.yml·.env.example·release/v26-beta - Δημιουργήστε:
/opt/discvault-next/.env· δικαιώματα αρχείου μόνο για τον κάτοχο (0600) - Επιλέξτε: με έγκυρο FQDN διατηρήστε τα
RP_IDκαιRP_ORIGINSευθυγραμμισμένα και χρησιμοποιήστε αξιόπιστο HTTPS · για άμεση ιδιωτική ή loopback IP χωρίς FQDN αφήστε κενά ταRP_IDκαιRP_ORIGINS - Επαληθεύστε:
DISCVAULT_NEXT_IMAGE=ghcr.io/helmerznl/discvault:beta·:dev - Εκτελέστε:
docker compose -p discvault_next_deploy config --quiet - Δοκιμάστε:
GET http://localhost:6180/api/next/health
Εντολές και ρυθμίσεις
Ενότητα «Εντολές και ρυθμίσεις»DiscVault v26 – beta
Ενότητα «DiscVault v26 – beta»set -euo pipefailinstall -d -m 0700 /opt/discvault-nextcd /opt/discvault-nextcurl --fail --location --proto '=https' --tlsv1.2 \ --output docker-compose.yml \ https://raw.githubusercontent.com/helmerzNL/DiscVault/release/v26-beta/app/deploy/next/docker-compose.ymlcurl --fail --location --proto '=https' --tlsv1.2 \ --output .env.example \ https://raw.githubusercontent.com/helmerzNL/DiscVault/release/v26-beta/app/deploy/next/.env.example
umask 077ENV_FILE=/opt/discvault-next/.envtest ! -e "$ENV_FILE"ENV_TMP="$(mktemp "$ENV_FILE.tmp.XXXXXX")"trap 'rm -f "$ENV_TMP"' EXITPOSTGRES_PASSWORD="$(openssl rand -hex 32)"JWT_SECRET="$(openssl rand -base64 48)"awk \ -v image='ghcr.io/helmerznl/discvault:beta' \ -v postgres_password="$POSTGRES_PASSWORD" \ -v jwt_secret="$JWT_SECRET" \ -v data_dir='/mnt/user/appdata/discvault' \ -v postgres_dir='/mnt/user/appdata/discvault-next/postgres' ' /^DISCVAULT_NEXT_IMAGE=/ { print "DISCVAULT_NEXT_IMAGE=" image; next } /^POSTGRES_PASSWORD=/ { print "POSTGRES_PASSWORD=" postgres_password; next } /^JWT_SECRET=/ { print "JWT_SECRET=" jwt_secret; next } /^DISCVAULT_DATA_DIR=/ { print "DISCVAULT_DATA_DIR=" data_dir; next } /^DISCVAULT_NEXT_POSTGRES_DATA=/ { print "DISCVAULT_NEXT_POSTGRES_DATA=" postgres_dir next } /^LEGACY_AUTH_ENABLED=/ { print "LEGACY_AUTH_ENABLED=true"; next } { print }' .env.example > "$ENV_TMP"chmod 0600 "$ENV_TMP"ln "$ENV_TMP" "$ENV_FILE"rm -f "$ENV_TMP"trap - EXITset -euo pipefailcd /opt/discvault-nextFQDN=discvault.example.comENV_FILE=/opt/discvault-next/.envENV_TMP="$(mktemp "$ENV_FILE.tmp.XXXXXX")"trap 'rm -f "$ENV_TMP"' EXITawk -v rp_id="$FQDN" -v rp_origin="https://$FQDN" ' /^RP_ID=/ { print "RP_ID=" rp_id; next } /^RP_NAME=/ { print "RP_NAME=DiscVault"; next } /^RP_ORIGINS=/ { print "RP_ORIGINS=" rp_origin; next } /^LEGACY_AUTH_ENABLED=/ { print "LEGACY_AUTH_ENABLED=true"; next } { print }' "$ENV_FILE" > "$ENV_TMP"chmod 0600 "$ENV_TMP"mv "$ENV_TMP" "$ENV_FILE"trap - EXITset -euo pipefailcd /opt/discvault-nextENV_FILE=/opt/discvault-next/.envENV_TMP="$(mktemp "$ENV_FILE.tmp.XXXXXX")"trap 'rm -f "$ENV_TMP"' EXITawk ' /^RP_ID=/ { print "RP_ID="; next } /^RP_NAME=/ { print "RP_NAME=DiscVault"; next } /^RP_ORIGINS=/ { print "RP_ORIGINS="; next } /^LEGACY_AUTH_ENABLED=/ { print "LEGACY_AUTH_ENABLED=true"; next } { print }' "$ENV_FILE" > "$ENV_TMP"chmod 0600 "$ENV_TMP"mv "$ENV_TMP" "$ENV_FILE"trap - EXITset -euo pipefailcd /opt/discvault-nextENV_FILE=/opt/discvault-next/.envtest "$(stat -c '%a' "$ENV_FILE")" = 600read_env() { sed -n "s/^$1=//p" "$ENV_FILE"; }
test "$(read_env DISCVAULT_NEXT_IMAGE)" = 'ghcr.io/helmerznl/discvault:beta'! grep -q ':dev' "$ENV_FILE"test "$(read_env LEGACY_AUTH_ENABLED)" = truePOSTGRES_PASSWORD_VALUE="$(read_env POSTGRES_PASSWORD)"JWT_SECRET_VALUE="$(read_env JWT_SECRET)"test "${#POSTGRES_PASSWORD_VALUE}" -ge 32test "$POSTGRES_PASSWORD_VALUE" != 'change-me-to-a-long-random-password'test "${#JWT_SECRET_VALUE}" -ge 48grep -qx 'DISCVAULT_DATA_DIR=/mnt/user/appdata/discvault' "$ENV_FILE"grep -qx 'DISCVAULT_NEXT_POSTGRES_DATA=/mnt/user/appdata/discvault-next/postgres' "$ENV_FILE"
RP_ID_VALUE="$(read_env RP_ID)"RP_ORIGINS_VALUE="$(read_env RP_ORIGINS)"if [ -z "$RP_ID_VALUE" ]; then test -z "$RP_ORIGINS_VALUE"else test "$RP_ORIGINS_VALUE" = "https://$RP_ID_VALUE"fi
docker compose -p discvault_next_deploy config --quietdocker compose -p discvault_next_deploy pulldocker compose -p discvault_next_deploy up -ddocker compose -p discvault_next_deploy pscurl --fail http://localhost:6180/api/next/healthΑναμενόμενο αποτέλεσμα
Ενότητα «Αναμενόμενο αποτέλεσμα»Αποδεχθείτε το αποτέλεσμα για Εγκατάσταση: Docker Compose μόνο όταν ισχύουν όλα τα παρακάτω αποτελέσματα: postgres · next-api · next-worker · next-mcp; 6180 → API 5000; HTTP 2xx · /api/next/health. Σημεία ελέγχου της σελίδας: release/v26-beta · app/deploy/next/docker-compose.yml · app/deploy/next/.env.example · DISCVAULT_NEXT_IMAGE · ghcr.io/helmerznl/discvault:beta · 6180:5000 · LEGACY_AUTH_ENABLED=true.
postgres·next-api·next-worker·next-mcp6180→ API5000- HTTP
2xx·/api/next/health
Ασφάλεια και επαναφορά
Ενότητα «Ασφάλεια και επαναφορά»Επόμενο βήμα
Ενότητα «Επόμενο βήμα»Εγκατάσταση: Πρώτη εκκίνηση και έλεγχος υγείας
Πηγή και κατάσταση
Ενότητα «Πηγή και κατάσταση»helmerzNL/DiscVault@4352c060ccd6- Moving beta source:
docker-compose.yml - Raw beta download:
docker-compose.yml - Pinned verification:
docker-compose.yml - Moving beta source:
.env.example - Raw beta download:
.env.example - Pinned verification:
.env.example - Πηγή και κατάσταση:
2026-07-20 - DiscVault Docs:
0.1.6
