Skip to content

Install: Persistent data and PostgreSQL

Operate the two persistent stores used by every DiscVault v26 release channel.

For both :latest and :beta, application records live in PostgreSQL at DISCVAULT_POSTGRES_DATA; media, profiles, plugins, and file assets live at DISCVAULT_DATA_DIR, mounted as /data. Back up both in one stopped-writer window.

  • DiscVault v26 stable · ghcr.io/helmerznl/discvault:latest
  • PostgreSQL stores application records
  • /data stores media, profiles, plugins, and file assets
  • DiscVault v26 beta · ghcr.io/helmerznl/discvault:beta
  • PostgreSQL stores application records
  • /data stores media, profiles, plugins, and file assets
  • running v26 Compose stack
  • backup destination outside the live data path
  • PostgreSQL 17
  1. Inspect: DISCVAULT_POSTGRES_DATA · /var/lib/postgresql/data
  2. Inspect: DISCVAULT_DATA_DIR · /data
  3. Verify: postgres · healthy · next-api
  4. Record: PostgreSQL dump and filesystem archive from the same stopped-writer window · restore rehearsal
Terminal window
docker compose --env-file /opt/discvault/.env -p discvault -f /opt/discvault/compose.yaml ps
docker compose --env-file /opt/discvault/.env -p discvault -f /opt/discvault/compose.yaml exec -T postgres sh -c 'pg_isready -U "$POSTGRES_USER" -d "$POSTGRES_DB"'
docker inspect discvault-next-api-1 --format '{{range .Mounts}}{{.Source}} -> {{.Destination}}{{println}}{{end}}'

PostgreSQL is healthy, all v26 services run, and both persistent host paths are verified.

  • PostgreSQL · healthy
  • persistent /data
  • matching backup set

Install: Reverse proxy and passkeys