sitectl commands, which operate on whichever context is active:
libops/omeka-classic:3.2.1-php84; that published image already contains the matching Omeka Classic release. Before changing that app version, back up MariaDB and the user-owned omeka-classic-files named volume:
sitectl deploy starts only omeka-classic and its required dependencies, waits with bounded probes, and inspects the public maintenance marker without starting public Traefik. A current database proceeds to the final bounded full-stack start. A required upgrade prints ACTION REQUIRED and exits nonzero while the internal application remains available and public ingress remains stopped.
In another terminal, create a loopback-only forward, open http://localhost:8080/admin, and complete the upgrade through the admin front controller:
Ctrl+C, then resume without changing the reviewed checkout or pulling different images:
--context NAME on both commands when the original deploy selected a non-active context. Finish with an application smoke test and verify custom plugins and themes; the core schema gate cannot attest to extension-specific upgrade work.
The Omeka Classic plugin does not register the generic dev-mode component. A whole-directory plugins or themes mount would hide extensions bundled in the versioned base image. Put custom extensions in the tracked downstream build context, or mount only an explicitly named custom plugin/theme directory in a local override.
sitectl omeka-classic ... is reserved for Omeka Classic-specific operations, including the
API helpers and resource shortcuts.
General lifecycle stays in the core CLI so the same operational contract
applies to every stack.
See sitectl create, sitectl compose, and
sitectl deploy for the full lifecycle reference.
