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.
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user