Notion alternative: Notea

Notion alternative: Notea

Ich benutze Notion schon seit einigen Jahren im privaten gebrauch. Nun wollte ich es auch für meine Arbeit benutzen. Deshalb hab ich mich auf die Suche nach einer Open Source Lösung auf Selfhost Basis gemacht. Nach einiger Zeit habe ich dann Notea gefunden.
Da ich für die Installation länger gebraucht habe als gewollt, habe ich eine Anleitung zusammengefasst.

Das Basissystem und Internet

ich benutze Ubuntu Server 22.04 für meine Notea Installation. Im ersten schritt habe ich nach der Installation die Netzwerkeinstellungen angepasst.
Dafür muss man den Netplan ändern. Dafür öffnet man den Pfad.

cd /etc/netplan/

Mit dem Befehl: ls kann man sich alle Dateien im Verzeichnis Netplan anzeigen lassen. Hier wird die "00-installer-config.yaml" bearbeitet.

nano 00-installer-config.yaml

Wie folgt, sollte die Datei abgeändert werden:

network:
  version: 2
  renderer: networkd
  ethernets:
    eth0:
      dhcp4: no
      dhcp6: no
      addresses: [10.20.0.9/16]  #ADDRESSE
      gateway4: 10.20.0.1  #GATEWAY
      nameservers:
        addresses: [10.20.20.1, 8.8.8.8] #DNS

Hier muss noch die IP Adresse, sowie der Gateway abgeändert werden. Wenn du einen eigenen DNS Server hast oder den DNS von deinem Router benutzen möchtest, gibt unten bei Nameserver deine eigene IP für den DNS Server ein.

Notea Installation

Ich habe Notea im Docker installiert. Dafür brauchen wir aber erst noch Docker.io. Dafür gibt man folgenden Befehl ein:

sudo apt install docker.io -y

Wenn Docker installiert ist brauchen wir noch ein Ablagespeicher für alle Dateien die Notea erstellt. Hier ist Notea sehr fortschrittlichen und benutzt den S3 Cloudspeicher. Wer sich nun denkt, dass er kein Geld ausgeben möchte für einen Cloudspeicher, bekommt hier den Workaround. Durch das Tool Minio erhalten wir einen lokalen S3 Speicher.
Auch diesen installiere ich im Docker damit ich später die Netzwerkeinstellungen besser managen kann. Hier ist der Docker Befehl:

sudo mkdir -p /etc/minio
sudo docker run -d \
-p 9000:9000 \
-p 9001:9001 \
--name minio \
-v /etc/minio:/data \
-e "MINIO_ROOT_USER=home_admin" \
-e "MINIO_ROOT_PASSWORD=notea" \
quay.io/minio/minio server --console-address ":9001" /data

Mit "sudo mkdir -p /etc/minio" sagen wir unserem Server, dass er im Verzeichnis "etc" das Verzeichnis "minio" anlegen soll, da wir hier später das Volume sichern.

Nun führen wir den Docker Befehl "sudo docker run -d \" aus. Durch das "\" erlaubt uns die Eingabe mehrere Zeilen zu benutzen.

Der Parameter "-p" sagt, dass die Ports 9000 und 9001 für den Docker gesichert werden sollen. Über den Port 9001 erreichen wir später die Weboberfläche und 9000 ist der Port für die API.

Durch die Eingabe "--name minio" sagen wir dem Docker wie er später heißt. So müssen wir uns keine ID´s merken.

Mit "-v" sagen wir dem Server wo das Volume liegen soll.

"-e" sind weitere Zusätze. Er soll in Minio den Benutzer home_admin anlegen mit dem Passwort notea.

Der letzte Abschnitt sichert nun die Eingabe.

Um Notea jetzt zu installieren geben wir folgendes ein:

sudo docker run -d \
--name notea \
-p 3000:3000 \
-e STORE_ACCESS_KEY=home_admin \
-e STORE_SECRET_KEY=notea \
-e STORE_BUCKET=notea \
-e STORE_END_POINT=http://localhost:9000 \
-e PASSWORD=PASSWORT \
-e COOKIE_SECURE=false \
cinwell/notea

Der Access Key ist der Benutzer der später auf die API zugreift. Der Secret Key ist das Passwort von dem Benutzer. Da Notea nur für einen Benutzer gedacht ist können wir auch nur ein Passwort festlegen. Dies tun wir bei "-e PASSWORD=".

Wichtig:Wenn keine SSL Verschlüsslung gesetzt ist, muss "COOKIE_SECURE" auf false stehen.

Nun müssen wir nur noch die IP von Notea eingeben im Browser mit dem Zusatz :3000.