Seit ein paar Wochen benutze ich Wiki.js 2.5.299

wiki.js ist ein modernes Open-Source-Wiki-System, das auf Node.js basiert.

  • Es bietet eine ansprechende Benutzeroberfläche und unterstützt das Echtzeit-Bearbeiten von Seiten.
  • wiki.js verfügt über eine benutzerfreundliche Oberfläche zum Erstellen und Formatieren von Inhalten.
  • Es unterstützt die Verwendung von Markdown-Syntax für die Formatierung von Text und bietet auch erweiterte Funktionen wie Diagramme und Tabellen.
  • wiki.js ermöglicht eine umfassende Anpassung und Integration von Plugins.

Genug getrommelt.

Ein Hinweis noch,Wiki.js kann nicht in einem Unterordner installiert werden.

Node wollte ich sowieso nicht nativ installieren, deshalb habe ich Wiki.js als Docker Container in Gebrauch.

Ich habe das Image von linuxserver.io verwendet. (linuxserver/wikijs:latest)

Ich finde, es ist einfach gut in der Bedienung.

Als Voraussetzung für die im 2ten Halbjahr kommende Release 3.0 ist als Datenbank Postgresql notwendig.

Der Hauptgrund ist die lokale Suche im Wiki, die Postgres als Voraussetzung bedingt.

Die Suche ist sonst sehr eingeschränkt, bzw. bindet fremde Suchdienste ein, was ich nicht möchte.

Installieren ist kein Hexenwerk, lediglich Postgres muss etwas geöffnet werden, damit die Verbindung klappt.

Die Konfiguration von postgresql sieht so aus:

In /etc/postgresql/13/main

postgresql.conf:

# Die Zeile mit
listen_addresses = 'localhost'                        # what IP address(es) to listen on;
# ändern in
listen_addresses = 'localhost,IP.Adresse.des.Servers' # what IP address(es) to listen on;

Und in pg_hba.conf:

# die folgende Zeile mit der Docker ip Adresse hinzufügen
host    all             all             172.17.0.3/32           md5

Ein

docker inspect wikijs|grep IPAddress 

liefert die richtige IP

Sollte dies aus irgendeinem Grund nicht funktionieren, im erweiterten Teil lesen.

Zum Debuggen:
docker logs -j wikijs.

Vielleicht ist hier der Grund zu finden.

Wenn nicht, dann in den laufenden Container mit

docker exec -it wikijs bash

und mal mit

ping 'IP.Adresse.des.Servers'

probieren, ob überhaupt der Server erreichbar ist. Wenn, dann lohnt evtl. der folgende etwas umfangreichere Versuch.

Da das pg Paket mit npm nicht installierbar ist:
npm install -g yarn
yarn add pg
vi testconnection.js mit dem Inhalt

const { Client } = require('pg');

async function testPostgresConnection() {
  const client = new Client({
    user: 'wikijsuser',
    password: 'Geheimespw',
    host: 'IP.Adresse.des.Servers',
    port: 5432,
    database: 'wikidatenbank'
  });

  try {
    await client.connect();
    console.log('Connected to PostgreSQL!');
    await client.end();
  } catch (error) {
    console.error('Error connecting to PostgreSQL:', error);
  }
}

testPostgresConnection();


dann eine test connection aus dem laufenden wikijs Container versuchen.

node testconnection.js

Nein, bisher ist hier keine Anleitung zur Installation, sondern nur zum Fehlersuchen.

Warum? Überlegt mal... Vielleicht scheibe ich ja doch noch mal, warum ich das brauchte.

2 Comments

Linear

  • Seraphyn  

    Kann ich von meiner Seite aus sehr empfehlen. Setze ich seit über einem Jahr im großen Stil ein und hat mich nie im Stich gelassen. Auch die Einstellungen der Rechte und Berechtigungen sind sehr gut gelöst

    Grüße Christian

    • bed  

      Ja, Gruppen und User muss man ein wenig genauer angucken, dann aber in Verbindung mit dem Öffentlich/Nichtöffentlich kann doch schon ganz gut steuern. Ich finde auch das erweiterte Markdown sehr gut. Macht spaß! Danke auch für deinen Kommentar, ist ja selten in der letzten Zeit :-)

Add Comment

E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Standard emoticons like :-) and ;-) are converted to images.
BBCode format allowed
Markdown format allowed