Files
esh-pfi-infrastructure/stacks/memos/README.md
T
vh 6df5549161 memos: deploy to ana-docker
Stock neosmemo/memos:stable, port 5230, SQLite at
/opt/docker/conf/memos/data/. Joins traefik-net and ships homepage
labels (group=Notes) so it auto-appears on the dashboard via docker
discovery — no edit to configs/homepage/services.yaml needed.

First-run bootstrap is via the UI: visit http://10.250.50.70:5230
and create the Host account through the sign-up form.

Playbook idiom note: docker compose pull lines need the literal
block scalar (|) when the grep pattern contains colons — bare-string
shell value made YAML parse the colon as a mapping separator and
elway choked on first try.
2026-04-29 13:27:12 -07:00

39 lines
1.3 KiB
Markdown

# memos
[memos](https://github.com/usememos/memos) — lightweight self-hosted
note / memo server. Single Go binary, SQLite by default, MIT license.
| | |
|---|---|
| host | `ana-docker` |
| port | `5230` |
| image | `neosmemo/memos:stable` |
| data | `/opt/docker/conf/memos/data/` (SQLite + uploaded resources) |
| homepage group | `Notes` |
## Deploy
```bash
scripts/elway ana-docker --playbook playbooks/deploy-memos.yaml
```
First run: visit <http://10.250.50.70:5230>, create the Host account
through the sign-up form. Subsequent users register through the same
form (or you disable open sign-up via Settings → Workspace).
## Tunables
See `.env.example` — copy to `.env` on the host (lives at
`/opt/docker/compose/memos/.env`, gitignored). Knobs are intentionally
minimal: image tag, host port, TZ, data dir. Memos itself reads its
config from the SQLite DB (workspace settings via the UI).
## Backups
Data dir is `/opt/docker/conf/memos/data/`. The host's restic profile
covers `/opt/docker/conf/` so the SQLite DB + uploaded resources go
along for free. SQLite snapshot is consistent under restic's COW reads
since memos uses WAL mode + fsync; for a guaranteed-quiescent backup
take a `docker exec memos sqlite3 /var/opt/memos/memos_prod.db ".backup /var/opt/memos/snapshot.db"`
in the restic pre-backup hook.