- topology.svg, container-tree.svg, data-flow.svg: show /srv/nc-files bound directly into nextcloud container at /mnt/ncdata (no intermediate /mnt/nc-data/nextcloud-data layer). - architecture.html: explain rewire, update storage table, remove pre-rewire 'why two layers' section. - procedure.html: NEXTCLOUD_DATADIR=/srv/nc-files, no mastercontainer bind, add §2.5 Rewire 2026-08-11 with recovery procedure, update backup script to also tar local nextcloud app volume, fix 4.3 verification (302 -> /login, status.php, file visibility). - operations.html: 4 backup files now (added aio-nextcloud-app.tar.gz), restore procedures updated, single-file restore uses new tar layout. - troubleshooting.html: add 3 new sections — appdata-missing, nextcloud-not-spawning, collabora-discovery-warning. - request-flow.svg: remove nextcloud/ subdir from NFS write path. - index.html, README.md: update paths and metadata.
51 lines
2.1 KiB
Markdown
51 lines
2.1 KiB
Markdown
# Nextcloud Office
|
|
|
|
Session log + runbook for the 2026-08-10 deployment and 2026-08-11
|
|
rewire of `office.rmf44.xyz` as a Nextcloud All-in-One stack with
|
|
Collabora + Whiteboard on `homework03`, replacing the retired
|
|
OnlyOffice container on `hawker`. The 2026-08-11 rewire collapsed the
|
|
storage layer to a single NFS bind (post-mortem in
|
|
`troubleshooting.html#appdata-missing`).
|
|
|
|
## Files
|
|
|
|
- `index.html` — overview, current state, at-a-glance
|
|
- `architecture.html` — topology, container tree, data flow, request flow
|
|
- `procedure.html` — phase-by-phase build commands (what was actually run)
|
|
- `troubleshooting.html` — every pitfall hit, with root cause and fix
|
|
- `operations.html` — backup pipeline, rollback, monitoring, day-2 follow-ups
|
|
- `assets/style.css` — self-contained dark theme (works standalone from disk)
|
|
- `assets/diagrams/topology.svg` — public ingress + NetBird + AIO
|
|
- `assets/diagrams/container-tree.svg` — 8 AIO containers + bind mounts
|
|
- `assets/diagrams/data-flow.svg` — NFS vs ext4 split, database on host
|
|
- `assets/diagrams/request-flow.svg` — swimlane sequence of a `git clone`-equivalent
|
|
|
|
## How to view
|
|
|
|
Open `index.html` in a browser. All paths are relative; no web server
|
|
needed. The HTML uses self-hosted woff2 fonts referenced from
|
|
`assets/fonts/{family}/*.woff2` — copy those from `../fonts/` if you
|
|
want the full editorial look.
|
|
|
|
```sh
|
|
# Local preview with full fonts
|
|
rsync -a ../fonts/ assets/fonts/
|
|
xdg-open index.html
|
|
```
|
|
|
|
Without the font files, the site falls back to system sans-serif / serif
|
|
per the CSS `font-family` chain — still readable.
|
|
|
|
## Style
|
|
|
|
Uses the `painkiller-bullet-dark-blue` theme: dark blue background
|
|
(`#0d1b2a`), mint accent (`#4ecca3`), Josefin Sans headings + Cormorant
|
|
Infant body. Same aesthetic as `../painkiller-bullet-dark-blue.css` in
|
|
this lab repo. Mirrors `/home/tigo/lab/gite_replacement/` template.
|
|
|
|
## Source material
|
|
|
|
The narrative comes from a single Hermes session on 2026-08-10 that
|
|
deployed the stack end-to-end. The skill `self-hosted-services`
|
|
`nextcloud-aio` notes (currently in development) reference the
|
|
named-volume bind pattern from this work. |