Files
otivm/docs/archives.md
2026-04-25 12:54:31 +00:00

3.3 KiB

OTIVM — Offline Archive InventoryOffline archives are vzdump snapshots of LXC container 1105 (otivm-dev) on srv-a.Each archive is stored in /var/lib/vz/dump/ on srv-a and copied to USB after creation.Before restoring any archive, read the state description carefully.Restoring will overwrite everything on the container — all code, all data, all PM2 state.

The Gitea repo is always the SSOT for code. Archives cover the OS, stack, and configuration.


Archive log

vzdump-lxc-1105-2026_04_25-04_10_53.tar.zst

Property Value
File vzdump-lxc-1105-2026_04_25-04_10_53.tar.zst
Date 2026-04-25 04:10 UTC
Size 552 MB
Container LXC 1105 — otivm-dev
Host srv-a (10.0.0.11)
Storage /var/lib/vz/dump/ + USB copy

Container state at time of archive:

  • Debian 12, unprivileged LXC
  • 2 cores, 512 MB RAM, 8 GB disk (upgraded to 4 cores, 2 GB RAM on 2026-04-25 after archive)
  • LAN IP: 10.0.0.23, WireGuard: 10.110.0.18
  • Node.js v22 installed (system)
  • Python venv at /home/otivm/venv
  • serve installed globally at /home/otivm/.npm-global/bin/serve
  • Nginx on wg-pk configured and proxying otium.civicus.us → 10.110.0.18:3000
  • SSL active on otium.civicus.us
  • otivm user created, bashrc configured, work alias present
  • Gitea repo cloned to /home/otivm/OTIVM
  • PM2 NOT yet configured at time of this archive
  • Vite + React scaffold NOT yet present at time of this archive

What this archive is good for:

Restoring the base OS and software stack if the container is lost or corrupted. After restore, you must: clone the repo, run npm install, run npm run build, install serve globally, and start PM2 manually.

Restore command (run on srv-a as root):

pct restore 1105 /var/lib/vz/dump/vzdump-lxc-1105-2026_04_25-04_10_53.tar.zst --force

vzdump-lxc-1105-2026_04_25-07_16_04.tar.zst

Property Value
File vzdump-lxc-1105-2026_04_25-07_16_04.tar.zst
Date 2026-04-25 07:16 UTC
Size 759 MB
Container LXC 1105 — otivm-dev
Host srv-a (10.0.0.11)
Storage /var/lib/vz/dump/ + USB copy

Container state at time of archive:

  • All of archive 1 plus:
  • Vite + React scaffold present at /home/otivm/OTIVM
  • npm run build completed — dist/ present
  • serve installed globally at /home/otivm/.npm-global/bin/serve
  • PM2 configured via ecosystem.config.cjs, running, saved
  • PM2 startup configured via systemd unit pm2-otivm.service
  • App serving on port 3000, responding HTTP 200
  • otium.civicus.us live and serving Vite welcome page over HTTPS
  • Gitea repo at commit 6725f11 (scaffold) + subsequent config commits

What this archive is good for:

Restoring a fully working serving stack. After restore the app will come up automatically via PM2 on boot. The game code is not yet present — pull from Gitea and run npm run build to get the latest game.

Restore command (run on srv-a as root):

pct restore 1105 /var/lib/vz/dump/vzdump-lxc-1105-2026_04_25-07_16_04.tar.zst --force

Convention

Archive filenames follow Proxmox default: vzdump-lxc-{CTID}-{YYYY_MM_DD-HH_MM_SS}.tar.zst Add a new entry to this file every time an archive is created and copied to USB. Always note exactly what is and is not present in the container at time of archive.