project-nomad/install
Chris Sherwood fab15c68a9
fix(storage): derive child-app bind paths from the admin's actual storage mount
Child services (Kiwix, Ollama, Qdrant, Flatnotes, Kolibri) are created via the
Docker socket, so their bind mounts use a HOST path. That path was baked into
the services table at seed time from NOMAD_STORAGE_PATH (default
/opt/project-nomad/storage) — and NOMAD_STORAGE_PATH wasn't even present in
management_compose.yaml, so it always fell back to the default.

Result: relocating the admin storage volume in compose (e.g.
/mnt/big/storage:/app/storage) moved the admin's own data but left child apps
mounting the old, now-empty /opt/project-nomad/storage. Kiwix would come up
with no content. (#938)

- Add _resolveHostStorageRoot(): inspect the admin's own container, find the
  bind backing /app/storage, and use its host Source as the single source of
  truth (cached). Falls back to NOMAD_STORAGE_PATH/default if it can't be
  inspected.
- Add _applyHostStorageRoot(): rewrite the host-side prefix of each storage bind
  to that root. No-op when it already matches the seeded prefix, so default
  installs are unaffected.
- Apply it in _createContainer (covers installs + dependency recursion) and in
  the Kiwix library-mode recreate path.
- management_compose.yaml: add an explicit NOMAD_STORAGE_PATH knob and rewrite
  the comments so the admin volume, env var, and disk-collector volume that must
  agree are spelled out.

Closes #938

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 04:46:49 +00:00
..
calibre-empty-library feat(supply-depot): per-app onboarding docs, install fixes, and in-app Docs links 2026-06-23 04:46:47 +00:00
sidecar-disk-collector fix(disk-collector): fix storage reporting for NFS mounts 2026-04-21 14:26:28 -07:00
sidecar-updater fix: update channel flexibility 2026-03-05 04:06:56 +00:00
collect_disk_info.sh feat: disk info collection 2025-12-07 19:13:43 -08:00
entrypoint.sh feat: make Nomad fully composable 2026-03-20 11:46:10 -07:00
install_nomad.sh fix(AI): vendor-aware AMD HSA override + benchmark discrete-GPU detection 2026-05-20 10:16:00 -07:00
management_compose.yaml fix(storage): derive child-app bind paths from the admin's actual storage mount 2026-06-23 04:46:49 +00:00
migrate-disk-collector.md build: compose and install script updates for disk-collector sidecar 2026-03-14 19:54:51 -07:00
migrate-disk-collector.sh chore: add additional warnings to migrate-disk-collector 2026-03-15 03:19:52 +00:00
run_updater_fixes.sh fix: container update pattern in run_updater_fixes 2026-03-05 04:32:09 +00:00
start_nomad.sh feat(install): add start & stop helper scripts 2025-08-08 15:07:32 -07:00
stop_nomad.sh feat(install): add start & stop helper scripts 2025-08-08 15:07:32 -07:00
uninstall_nomad.sh ops: added a check for docker-compose version in Nomad utility scripts 2026-03-20 11:46:10 -07:00
update_nomad.sh ops: added a check for docker-compose version in Nomad utility scripts 2026-03-20 11:46:10 -07:00
wikipedia_en_100_mini_2025-06.zim fix(ZIM): host initial zim download in GH repo 2025-09-02 22:44:01 -07:00
wikipedia_en_100_mini_2026-01.zim build: add latest initial zim file 2026-03-24 02:08:18 +00:00