Converted from the source .docx manuals with pandoc; embedded screenshots
extracted to docs/assets/<slug>/ (29 PNG + 5 JPEG). Dropped non-renderable WMF
letterheads, promoted titles/sections to headings, wired nav + index, removed
the placeholder template page. FTP shared password redacted (site is public).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
zensical build outputs to site/ by default; nginx was mounting the empty
public/ and returning 403 (directory index forbidden). Point the web-server
mount, .gitignore and README at site/.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Repo traefik files had drifted behind the live config on serverweb. Pull the
authoritative versions: file-only provider (drop docker provider), Portainer
self-signed serversTransport, and correct '||' HostSNI syntax for exchange.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Static instructions site for client 05 served at help.osk.team. Markdown +
images built by Zensical (zensical build) into public/, served by nginx behind
Traefik. Content is bind-mounted from /mnt/containers/help-osk-docs (absolute
host path — Portainer GitOps can't resolve relative mounts). Adds the
help/help-osk router+service to traefik/dynamic/web.yml (TLS via Let's Encrypt,
public/open).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Mirrors the live /mnt/containers/portainer/docker-compose.yaml on serverweb,
previously only on the host.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Portainer GitOps compose stacks for serverweb (05-osk):
- nginx-proxy-manager: reverse proxy (80/81/443), DB env-driven
- flame: internal dashboard (5005)
- kms: py-kms Windows activation server (1688)
All app stacks join the external reverseproxy-nw network.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>