Obsidian auf Synology

Hallo, habe gerade die Obsidian Masterclass gekauft in der großen Hoffnung, dort, wie in der Vorschau und in den Videos beworben, auch eine Anleitung zur Installation auf meiner Synology DS920+ (in Docker/Container Manager o. ä.) und zur Einrichtung der Synchronisation mit Windows und iOS zu finden.
Dort heißt es: „Wenn du einen selbst gehosteten Sync sowie automatisierte Backups genau wie im Kurs einrichten möchtest, brauchst du einen Synology-NAS, der den Container Manager unterstützt.“
Gibt es diese Installationsbeschreibung überhaupt? (Sorry, vielleicht übersehe ich auch was?)

Hallo Franz,
ja, die Installationsbesschreibung gibt es. Sie besteht aus zwei Teilen. Teil 1: Im Kapitel Nützliche Community-Plugins, Selfhosted live Sync und Teil 2: Bonuskapitel, CouchDB. Ich habe von Synology die DS224+. Nach Einrichtung der Datenbank auf dem NAS, habe ich die Konfiguration den Plugins Selfhosted live Sync vorgenommen.

Ich habe nutze die Sync-Funktion, um meinen Windows-Rechner und mein iPad abzugleichen. In der Indtallationsbeschreibung geht Stefan davon aus, dass dein NAS aus dem Internet erreichbar ist. Ich habe die Anleitung für mich angepasst, da mein NAS nur im interne Netz erreichbar ist. Den Zugriff aus dem Internet habe ich über meine Fritz!Box per WireGuard realisiert. Funktioniert sehr gut.
Gruß Michael

Hallo zusammen,

danke @HMK-Michael, genau so ist es.

@Franz vielleicht besteht das Missverständnis darin, dass du gedacht hast, Obsidian direkt auf dem NAS zu installieren? Das ist nicht der Fall, denn Obsidian ist ja nur die Software, mit der du deine Notizen bearbeitest.
Was in der Masterclass gezeigt wird, ist, wie du dein NAS nutzen kannst, um verschiedene Obsidian-Instanzen zu synchronisieren.

Hallo Michael, hallo Stefan,
Danke für Eure prompte Reaktion? Hatte wohl nicht richtig eingeordnet, dass auf der DS Obsidian selbst wohl garnicht installiert wird. (Um ggf. auch auf dieser Plattform damit arbeiten zu können, analog Calendar, Kontakte, und NoteStation)
WireGuard via Fritzbox ist installiert! Mache mich jetzt dran und bin sehr gespannt!

Hallo Franz,
du hast ja auch geschrieben, dass du den externe Zugriff über die Fritz!Box per WireGuard realisierst. So habe ich das auch gemacht.
D.h. bei der Einrichtung der Datenbank couchdb habe ich die Web Station nicht installiert. Im Plugin habe ich die interne IP-Adresse (http: interne IP:5984) eingegeben. Dann per Check prüfen lassen und alle Fehler durch das Plugin beheben lassen (so wie beschrieben).
Gruß Michael

Hier der Punkt bei der Einrichtung der Datenbank. Den Haken Web Station habe ich nicht gesetzt.

Und hier der Punkt der Konfiguration des Plugins Selfhosted Love Sync.

Hallo Michael,
bin bei der Durchsicht der Masterclass zum Thema Synchronisation (Deine o.g. Kapitel) und finde dort die Einrichtung der App couchDB selbst nicht. Dort wo die Installation von Live-Sync (Ordner „obsidian_sync“) auf der DS beschrieben wird, ist der Ordner „couchdb_obsidian“ bereits vorhanden, was darauf hindeutet, dass die App selbst bereits installiert ist. Gibt es dazu eine Anleitung oder macht man das zuvor freihändig?

Die Lektion zu CouchDB ist hier:
https://kurse.digitalisierung-mit-kopf.de/lesson/34/

Mehr einrichten musst du hier nicht, nachdem du diese Lektion durchgearbeitet hast, kannst du dich direkt mit Obsidian auf die CouchDB verbinden.

Hallo Franz,
du kannst ja mal im Webbrowser die interne IP-Adresse deines NAS plus dem Port 5984 (http: interne IP:5984) eingeben. Dann sollte eine Meldung erscheinen. Wenn das so aussiehst, läuft die Datenbank.
Gruß Michael

Hallo zusammen,
Obsisidian installiert auf Windows-PC und iPhone/iPad (iMAC fehlt noch), Couchdb auf der DS installiert (Portfreigabe etc.) - aber vermutlich nicht korrekt:
Vorbemerkung: ich bin strikt nach Stefans Anleitung vorgegangen, also zur Einrichtung einer Synchronisation über Internet. Beide infragekommende Ports sind sowohl auf der Fritzbox als auch mit Regel in den Synology-Einstellungen geöffnet!

Nach der Einrichtung des Container Manager Projekts obsidian_sync erscheint im Webportal nur das"obsidian_sync (project)" mit Hostname und Port und blauem Link (der allerdings meldet „Seite wurde nicht gefunden“).
Der Service „couchdb“ erscheint im Webportal garnicht, was darauf schließen lässt, dass er nicht richtig für den Webzugang installiert ist - Couchdb ist allerdings lokal über den Port 5984 via http problemlos erreichbar, läuft also! (Gibt es keine Anleitung zur sauberen webzugangsfähigen Installation von couchdb? (- am besten gleich über https)

Schon bei der Erstellung des Projektes „obsidian_sync (project)“ kommt die Fehlermeldung: „… kann nicht erstellt werden“ mit „driver failed programming external connectivity on endpoint obsidian_sync-couchserver-1 … Error starting userland proxy: listen tcp4 0.0.0.0:5984: bind: address already in use“ Also scheint trotz haarkleiner Befolgung der Anleitung etwas mit der Erreichbarkeit der Adresse nicht zu stimmen, weil sie „besetzt“ ist.
Wieso steht bei endpoint: „obsidian_sync-couchserver-1“ ein „-1“?
Ich hatte bei der Erstellung des Containers die vom System vorgeschlagenen Bezeichnungen für Image und Container „couchdb-1“ der besseren Lesbarkeit halber in „couchdb“ abgewandelt, da es bei mir zuvor noch keine gleichlautenden Container gab. War das vielleicht ein Fehler, der systemintern jetzt zu Zuordnungsproblemen führt?

Frage: der Pfad „db.meineDynDNS“ ist als solcher ja nirgends auf der DS definiert, das „db“ ist ja kein wirklicher FileStation-Zielort. Welches Ziel soll damit faktisch adressiert werden?

Weiteres Problem: die docker-compose.yml liess/lässt sich vom Text-Editor nicht im obsidian_sync-Ordner speichern. Fehlermeldung: „Datei oder Verzeichnis nicht vorhanden“. (Habe unter Berechtigungen alles gecheckt - bei Docker steht unter Vorschau und Gruppenberechtigungen: „Anpassen“ - was könnte das bedeuten?) Habe die .yml dann von Hand zu Fuss in den Ordner hineinkopiert und sie wurde bei der Projekterstellung auch erkannt, aber vielleicht nicht richtig gelesen?
Ist ev. eine unzureichende Zugriffsberechtigung auf den Docker-Ordner der Grund für das Problem? Welche Berechtigungen über mich mit meinem Administratornamen hinaus müssen für die Ordner couchdb und obsidian_sync in Filestation bzw im Container Manager gesetzt sein?

Kann das Connectivity-Problem was damit zu tun haben, dass die DS grundsätzlich nur über https erreichbar sein soll und auch ist während die Einrichtung /Benutzung von couchdb standardmäßig nur http vorsieht. Weiterhin habe ich bei der Projekterstellung obsidian-sync anfangs wie beschrieben http später allerdings auch alternativ https aktiviert - beides führte nicht zur Herstellung der Verbindung.
Mir fallen alle Haare aus …

Hallo Franz,
ich kann leider auch nicht all deine Fragen beantworten, da ich auch nicht so tiefes Fachwissen habe.

Du schreibst:

Somit ist aus meiner Sicht die Voraussetzung Einrichtung der Datenbank geschaffen und die Datenbank läuft.
Auf meinem NAS habe ich keinen externen Zugriff eingerichtet. Die Datenbank rufe ich nur im internen Netz auf, die Frage http: oder https: finde ich nicht so relevant (ich sehe da kein Risiko, was sollte passieren?).
Da ich keinen externen Zugriff über die Synology Web-Station habe ich die Einrichtung db.dyndns nicht durchgeführt.
Meinen externen Zugriff habe ich über die Fritz!Box per Wireguard realisiert.

Du kannst ja mal einen Test durchführen, ob selfhosted Live Sync läuft.
Einrichtung Selfhosted Live Sync auf einem Rechner. Bei den Zugangsdaten die interne IP-Adresse eintragen (URI) und die weiterne Daten deiner Datenbank (Username, Password, Database name). Dann auf die Checkbox Check klicken und allen Fehler bereinigen lassen.
Hier das Bild meiner Konfiguration. Auch hier habe ich nur http:… eingetragen

Danach würde ich auf einem zweiten Geräte die Synchronisation einrichten, so wie es Stefan beschreibt (per LINK). Durch den LINK werden die Zugangsdaten auf dem zweiten Geräte einerichtet. Auch hier solltest du den Punkt Check and fix database configuration anklicken.

Dann kanst du sehen, ob auf beiden Geräten, die Daten synchronisiert werden.
Ich hoffe, meine Tipps helfen. Viel Erfolg.
Gruß Michael

Hallo Michael,
Danke für die Tipps. Hat tatsächlich funktioniert: die lokale Synchronisation zwischen PC, iPhone und iPad funktioniert jetzt.
Das bedeutet die couchdb mit der Datenbank obsidian synchronisiert die Datensätze mit den 3 „Obsidian-Vault“ auf den Clients über den lokalen Port 5984 ohne dass der fehlerhalt installierte obsidian_sync Container (bzw das gleichnamige Projekt), der im übrigen auch garnicht nicht gestartet werden kann, irgendeine Funktion übernimmt. Wozu wird dann dieses Projekt und der Port 9984 benötigt? Kann man das Projekt und die offenen Ports dann nicht auch einfach entfernen/löschen oder hat es tatsächlich noch eine im Hintergrund agierende Funktion.

Wenn nun von unterwegs via Internet synchronisiert werden soll reicht es tatsächlich WireGuard zur Fritzbox zu aktivieren; wenn WireGuard ausgeschaltet ist, findet keine Synchronisation statt. Super!!

Hallo Fanz,
zu den Fehlerhinweisen kann ich leider keine Aussagen treffen.

Ich habe gerade bei mir einmal den Docker Manager angesehen. Dort finde ich ein Projekt (Bild 1) und den Container für die Datenbank (Bild 2).
Der Staus ist jeweils grün.

Wie sieht es bei dir aus?

Hast du mal ausprobiert, ob du Self hosted Live Sync weiter einrichten kannst (siehe meine Antwort von heute)?

Gruß
Michael

Hallo Michael,
wie gesagt, das Self hosted Life Sync habe ich auf allen Plattformen installiert und die einmalig gefixte und konfigurierte URI kopiert und übertragen. Läuft gut!
Allerdings ist im Container Manager unter Container nur „CouchDB“ grün, während hier „obsidian_sync-couchserver-1“ und unter Projekte „obsidian-sync“ rot (nicht startfähig) angezeigt wird.
Macht es Sinn, das Projekt obsidian sync ein 3. Mal neu zu installieren, wenn er doch jedesmal keine Konnektivität aufbaut weil der Port belegt ist?
Wird dieses Projekt überhaupt benötigt? Scheint ja auch, jedenfalls unter diesen Testbedingungen ohne zu funktionieren.

Hallo Franz,

gute Fragen, auf die ich keine Antworten habe. Vielleicht kann Stefan diese Fragen beantworten.
Bevor die das Projekt neu installierst, kannst du einen Test durchführen.

  • Nur das Projekt im docker Management stoppen.
  • NAS neu starten
  • In Obsidian an einem Gerät Änderungen vornehmen und prüfen, ob auf den anderen Geräten die Änderungen ankommen.

Dann wäre die Vermutung, dass das Projekt nur für einen externen Zugriff eingerichtet werden muss.
Wie gesagt, es ist nur eine Versuch :slightly_smiling_face:

Wenn die lokale Synchronisation klappt, kannst du die fehlerhaften Container beenden und löschen. Ich vermute, dass du mehrfach versucht hast, den gleichen Container zu starten, was auch hier ersichtlich ist:

Hallo Michael,
im Prinzip verstehe ich es so, dass das Projekt obsidian_sync nur für die Verbindung über den Webserver und das Internet als Synchronisationsschiene benötigt wird.
Das ist zwar grundsätzlich einfacher als über WireGuard, der ja jedesmal (umständlich) aktiviert werden muss, wenn man synchronisieren will, aber zur Not geht es auch ohne, bis dann vielleicht mithilfe von Stefan das Projekt obsidian_sync zum Laufen kommt. Wie gesagt lokal geht es ja.
Mein Frage ist noch: hast Du Wireguard heimseitig auf der Fritzbox oder in der Synology installiert?

Hallo Franz,

ich habe WireGuard auf der Fritz!Box eingerichtet. Somit habe ich einen Einstiegspunkt in mein Netzwerk. Ja, es ist vielleicht ein bisschen umständlich.
Gruß Michael

Hallo Stefan,
Danke für Deine Stellungnahme. Wenn Du von „fehlerhaften Containern“ sprichst, kannst Du doch eigentlich nur den „obsidian_sync-couchserver-1“ meinen. Der „CouchDB“ darf wohl nicht gelöscht werden, sonst wäre doch die Datenbank futsch und damit auch die lokale Synchronisation?
Du schreibst: Ich vermute, dass du mehrfach versucht hast, den gleichen Container zu starten, was auch hier ersichtlich ist: … 5984: bind: address already in use
Ja ich hatte den CouchDb Container gestartet als ich das Projekt angelegt habe, damit das Projekt vermeintlich darauf zugreifen kann. Habe jetzt die CouchDB beendet und tatsächlich lässt sich das Projekt jetzt starten und im Anschluss leuchtet der Status grun wogegen der Status der CouchDB grau bleibt. Allerdings läßt sich keine Verbindung über die Host-Adresse herstellen.

Hallo zusammen,
die Synchronisation zwischen PC, iPad und iPhone funktioniert leider nur lokal. Alle Versuche einer Synchronisation von außerhalb über das Internet (via WireGuard-VPN-Verbindung zwischen iPhone und iPad (via perönlicher Hotspot) und der Fritzbox - ergo lokal) funktionieren nicht. Ebenso scheitert die Synchronisation über die WireGuard-VPN-Verbindung zwischen zwei entfernten Fritzboxen, über welche ansonsten die Verbindung zum NAS problemlos funktioniert.
Daher möchte ich doch versuchen, die Synchronisation via DynDNS einzurichten, wie es in der Masterclass angekündigt und gezeigt ist.
M. E. ist der Grund für das bisherige Scheitern der Umstand, dass couchdb (unvollständig installiert / gemäß Anleitung: How to Install CouchDB on Your Synology NAS – Marius Hosting) nur für den lokalen Zugang und nicht über den Webserver erreichbar ist.
Habe die Container gelöscht und die Installation gemäß Masterclass couchdb nochmal 1 zu 1 wiederholt!
Wenn das WebPortal geöffnet ist (Kapitel CouchDB) wird dort jedenfalls bei mir unter Service/Custimized Portal nur das obsidian_sync (project) mit dem Projektnamen: "db.eigenedyndns ,ot Port 9984 angezeigt, der Service couchdb_obsidian fehlt. Ein Zugriff über den Browser geht schief? Ohne die korrekte Installation der couchdb-Datenbank auf dem NAS scheint das ganze Konstrukt des internetbasierten Self-hosted Live-Sync unmöglich. Vielleicht hangts ja auch daran, dass in dern NAS Konfiguration https vorgeschrieben ist und der http-Zugriff deswegen nicht funktioniert?
Frage: Wo und wie bitte kann (vermutlich) in Portainer.io eingestellt werden, dass der Stack couchdb über das Web von außen erreichbar sein soll?

Hallo Stefan, hallo Michael,
nach einer völlig neuen Installation funktioniert die lokale Synchronisation jetzt reibungslos. Auch die Verbindung via WireGuard sowohl über einen fremden Internetzugang als auch über das Mobilfunknetz arbeitet jetzt fehlerfrei.
Danke für Eure Unterstützung