Structural repair: - 13 pages were the same document twice (each exactly 2x its HEAD size), a second frontmatter block whose closing fence had been glued onto a body line by a frontmatter rewrite that re-read its own output. Un-doubled by cutting at the second frontmatter and keeping the copy whose body is a superset; the orphan census reports 0 lost tokens against HEAD. - log.md: one entry per date, bare `## YYYY-MM-DD` headings, newest first — 66 dated headings merged into 34, titles demoted to bold leads, every content line verified present. The file had been descending at the head and ascending at the tail. Ownership moves: - New `LLM/frank-medium.md` is the locator for the retired Dankserver endpoint: era windows quoted from each era page's own banner, no numbers restated, and the two unresolved date conflicts recorded instead of silently resolved. `frank-archon.md` links to it instead of restating the pre-rename window. - The four Pipeline-Parallelism stubs (frontmatter only, no body) are gone; `Multi-Node Runtimes.md` owns runtime construction, launch, mixed-vendor verdicts and cross-split spec decode, and the four links that pointed at the stubs were repointed at it or at the drafter page. - Authentik's three stub pages fold into `Authentik.md`, with the process detail and the outpost reference split out so the parent stays under the length hint. Verified corrections (host census + live probe, 2026-10-19): - The MXFP4 checkpoint two pages called the "on-disk rollback" is gone: /home/dank/models/ holds StillDeadcode, rad and tpl.jinja. Stated once, on the era page that owns that payload; the swap page now links to it. - frank-medium-radiance-mxfp4: the 4.24/7 accept rate belongs to the DFlash2 arm measured on the FP8 target, not to the MXFP4 era; the 3-family soak run census is kept once (155 requests) instead of twice (~120 and 155). - Fleet shapes re-confirmed against the live endpoints before touching any page: 3x200000 fp8 KV, 2x200704, 2x262144. Index rows are regenerated, not hand-carved. Net -1,849 vault lines.
83 lines
2.7 KiB
Markdown
83 lines
2.7 KiB
Markdown
---
|
|
type: reference
|
|
title: MariaDB (RomM Backend)
|
|
description: "The MariaDB backend for RomM: quadlet unit, network alias, env-file secret handling, and the backup path."
|
|
tags: [mariadb, romm, dankserver]
|
|
timestamp: 2026-09-03T00:00:00Z
|
|
---
|
|
|
|
# MariaDB (RomM Backend)
|
|
|
|
MariaDB 11 provides the database backend for [[RomM]] on Dankserver. RomM's
|
|
current release requires MariaDB (or PostgreSQL) for its data store; this
|
|
deployment uses MariaDB.
|
|
|
|
**Host:** Dankserver — container name `romm-mariadb`, unit
|
|
`romm-mariadb.service` (user-manager quadlet from
|
|
`dankserver/romm/quadlet/romm-mariadb.container`).
|
|
|
|
## Facts (verified from the live unit)
|
|
|
|
| Item | Value |
|
|
|------|-------|
|
|
| Image | `docker.io/library/mariadb:11` |
|
|
| Port | 3306 — internal only; the unit publishes **no** port, so the DB is unreachable from the host network by construction |
|
|
| Network | `dankserver_appnet` with `alias=mariadb` — RomM reaches it via `DB_HOST=mariadb` |
|
|
| Database / user | `romm` / `romm` |
|
|
| Data volume | `/home/dank/Containers/romm/mariadb:/var/lib/mysql` |
|
|
| Secrets | supplied via `EnvironmentFile=/home/dank/Containers/romm/env` (mode 0600, host-local — `MARIADB_ROOT_PASSWORD` and friends never enter the repo) |
|
|
|
|
## Unit shape (as deployed)
|
|
|
|
```ini
|
|
[Unit]
|
|
Description=RomM mariadb container
|
|
After=network.target
|
|
Wants=romm-redis.service
|
|
|
|
[Container]
|
|
ContainerName=romm-mariadb
|
|
Image=docker.io/library/mariadb:11
|
|
Network=dankserver_appnet:alias=mariadb
|
|
EnvironmentFile=/home/dank/Containers/romm/env
|
|
Environment=MARIADB_DATABASE=romm
|
|
Environment=MARIADB_USER=romm
|
|
Volume=/home/dank/Containers/romm/mariadb:/var/lib/mysql
|
|
HealthCmd=mariadb-admin ping -h localhost
|
|
HealthInterval=30s
|
|
HealthTimeout=10s
|
|
HealthRetries=3
|
|
|
|
[Service]
|
|
Restart=always
|
|
RestartSec=5
|
|
```
|
|
|
|
`MARIADB_ROOT_PASSWORD` and `MARIADB_PASSWORD` are read from the env file at
|
|
container-create time (`EnvironmentFile=` appears in both `[Container]` and
|
|
`[Service]` so `podman generate systemd`-style regeneration keeps them). The
|
|
root password is a real secret — per repo secret rules it lives only in the
|
|
host-local env file, never in git.
|
|
|
|
## Boot order
|
|
|
|
RomM declares `Wants=romm-mariadb.service` + `After=romm-mariadb.service`, so
|
|
a cold boot starts the database first; the health ping (`mariadb-admin ping`)
|
|
is what marks the unit healthy for anything gating on it.
|
|
|
|
## Backup
|
|
|
|
Back up the volume directory periodically (stop-free: rsync of a quiet DB dir):
|
|
|
|
```bash
|
|
sudo rsync -a /home/dank/Containers/romm/mariadb /mnt/backup/romm-mariadb/
|
|
```
|
|
|
|
For consistency-critical dumps prefer `mariadb-dump` over file copy; the data
|
|
dir copy is only safe while RomM traffic is idle.
|
|
|
|
## See Also
|
|
|
|
- [[RomM]] — service that uses this database
|
|
- [[redis]] — the sibling cache/queue container on the same network
|