HedgeDoc¶
Was es tut¶
HedgeDoc ist ein Editor für gemeinsame Notizen im Browser: Mehrere Personen schreiben gleichzeitig an einem Text in Markdown, etwa an einem Protokoll oder einer Planung. Notizen lassen sich per Link teilen, auch mit Personen ohne Konto. Vorerst nutzen es nur die Admins.
Wo es liegt¶
| Adresse | https://md.garage-lab.de |
| Host | werner |
| Stack-Datei | syslet/werner/stack-hedgedoc.cue |
| Upstream | hedgedoc.org, Doku |
Verwaltet über¶
Repo. Container, Einstellungen und Anbindung an Authentik stehen in der Stack-Datei bzw. in Terraform. In HedgeDoc selbst gibt es nichts einzustellen; die Notizen verwalten die Nutzerinnen und Nutzer selbst.
Aufbau¶
flowchart LR
caddy["Caddy"]
subgraph stack ["Netzwerk hedgedoc (intern)"]
server["hedgedoc-server"]
db["hedgedoc-postgres"]
exp["hedgedoc-postgres-exporter"]
end
uploads[("hedgedoc-server-uploads")]
data[("hedgedoc-postgres-data")]
dump[("hedgedoc-postgres-backups")]
caddy -->|md.garage-lab.de| server
server --> db
exp --> db
server --- uploads
db --- data
db --- dump
- hedgedoc-server ist die App; hochgeladene Bilder liegen im Volume
hedgedoc-server-uploads. - hedgedoc-postgres ist die Datenbank mit allen Notizen.
- hedgedoc-postgres-exporter liefert Messwerte der Datenbank für das Monitoring; er hängt zusätzlich am Netzwerk
caddy, weil ein Container nur an einem internen Netzwerk keinen Port auf dem Host veröffentlichen kann, über den Prometheus ihn abfragt.
Die Stack-Datei ist in Eine Stack-Datei lesen Block für Block erklärt.
Login / SSO¶
Angemeldet wird nur über Authentik per OIDC (application_hedgedoc.tf); eine eigene Registrierung mit E-Mail und Passwort ist abgeschaltet.
Zugang hat, wer in der Gruppe „HedgeDoc Access“ ist; vorerst sind das nur die Admins, und neue Mitglieder kommen nicht automatisch hinein (siehe Gruppenmodell in Authentik).
HedgeDoc kann keine Rollen aus dem Login übernehmen und bekommt deshalb keine Gruppen.
Backup¶
Gesichert werden die hochgeladenen Bilder und ein Dump der Datenbank (Block backup: in der Stack-Datei, siehe Backup).
Beim Zurückholen kommen erst die Dateien zurück, danach wird der Dump in die Datenbank eingespielt (siehe App aus dem Backup wiederherstellen).
Updates¶
Die Version steht in image: hedgedoc: tag: oben in der Stack-Datei.
Vor jedem Update die Release Notes von HedgeDoc lesen (siehe Image-Version anheben).
Besonderheiten / bekannte Probleme¶
- Hinter Caddy:
CMD_DOMAINundCMD_PROTOCOL_USESSL: "true"in der Stack-Datei sorgen dafür, dass HedgeDoc Links mit der öffentlichen Adresse undhttpserzeugt, obwohl Caddy per HTTP weiterreicht (siehe Ingress mit Caddy).
Weiterlesen¶
- Eine Stack-Datei lesen: dieselbe Stack-Datei Block für Block
- Anwendungen