#!/bin/bash # Instance Commands Header # Shows available instance commands and help information cliShowInstanceHelp() { echo "" echo "Available Instance Commands (* is required):" echo "" echo " Run more than one copy of a multi-instance-capable app (e.g. two" echo " Bookstack/WordPress sites). Each instance is a full, isolated app:" echo " its own data, DB, subdomain, backups and update cadence. Only apps" echo " with CFG__MULTI_INSTANCE=true can be instanced." echo "" echo " libreportal instance create [type*] [name*] [domain#] [subdomain] [--local]" echo " - Provision + install a new instance." echo " type = base app slug (e.g. bookstack)" echo " name - instance name (e.g. blog)" echo " domain# - which CFG_DOMAIN_n to route on (default 1)" echo " subdomain- host label (default -)" echo " --local - LAN only: no Traefik router, served" echo " on its own port. Implied when no" echo " CFG_DOMAIN_n is configured." echo " libreportal instance remove [slug*] - Uninstall + remove an instance (e.g. bookstack_blog)" echo " libreportal instance list [type] - List instances (all, or just for one app type)" echo " libreportal instance repair [slug] [--dry-run]" echo " - Fix instances cloned before the tool/auth" echo " renames landed: their Tools actions error with" echo " 'has no tool', and their admin-password resets" echo " write to the BASE app's config. Rewrites the" echo " template only — no container is touched. Safe" echo " to run repeatedly; healthy instances are a no-op." echo "" }