--- title: Wiki.js Profice Dokumentation description: published: true date: 2026-02-23T09:04:58.250Z tags: editor: markdown dateCreated: 2026-02-23T09:04:58.250Z --- # 📚 Wiki.js Instanz-Dokumentation: wiki.profice.de Diese Dokumentation beschreibt die Einrichtung, den Betrieb und die Synchronisations-Logik der zentralen Wissensdatenbank **wiki.profice.de**. --- ## 1. Architektur-Überblick Wiki.js dient als zentrales Dokumentations-Tool und ist tief in unsere Infrastruktur integriert. Die Datenhaltung erfolgt redundant durch eine Kopplung mit unserem internen Git-System. * **Domain:** `wiki.profice.de` * **Plattform:** Wiki.js (Node.js Applikation) * **Datenbank:** PostgreSQL (Docker) * **Reverse Proxy:** Traefik * **Versionskontrolle:** Gitea (`git.profice.de`) * **Netzwerk:** Zugriff nur via **WireGuard VPN** --- ## 2. Sicherheits- und Netzwerkzugriff ### 2.1 VPN-Beschränkung (WireGuard) Die Instanz `wiki.profice.de` ist **nicht** öffentlich erreichbar. Der Zugriff wird durch den Traefik-Proxy streng auf Anfragen aus dem WireGuard-Tunnel beschränkt. * **Voraussetzung:** Ein aktiver WireGuard-Tunnel mit Zugriff auf das Netzsegment von `profice.de`. * **DNS:** Die interne Auflösung der Domain erfolgt nur bei bestehender VPN-Verbindung. ### 2.2 TLS-Verschlüsselung Obwohl die Verbindung über einen verschlüsselten VPN-Tunnel erfolgt, wird der Traffic zusätzlich durch **TLS-Zertifikate** (via Let's Encrypt / Traefik) gesichert, um "Man-in-the-Middle"-Angriffe innerhalb des Netzwerks zu verhindern. --- ## 3. Technische Konfiguration (Docker) Die Bereitstellung erfolgt über Docker Compose. Wiki.js benötigt eine PostgreSQL-Datenbank für den Betrieb. ### 3.1 Docker Compose Beispiel ```yaml version: "3.8" services: db: image: postgres:15-alpine container_name: wikijs_db environment: - POSTGRES_DB=wiki - POSTGRES_USER=wikijs - POSTGRES_PASSWORD=dein_sicheres_passwort volumes: - /opt/wiki/db-data:/var/lib/postgresql/data networks: - internal_network wiki: image: requarks/wiki:2 container_name: wikijs_app depends_on: - db environment: - DB_TYPE=postgres - DB_HOST=db - DB_PORT=5432 - DB_USER=wikijs - DB_PASS=dein_sicheres_passwort - DB_NAME=wiki volumes: - /opt/wiki/config:/wiki/config networks: - internal_network - traefik_network labels: - "traefik.enable=true" - "traefik.http.routers.wiki.rule=Host(`wiki.profice.de`)" - "traefik.http.routers.wiki.entrypoints=websecure" - "traefik.http.routers.wiki.tls.certresolver=myresolver" networks: traefik_network: external: true internal_network: external: false ``` ## 4. Gitea-Integration (Git Storage) Ein wesentliches Merkmal dieser Instanz ist die bidirektionale Synchronisation mit unserem internen Gitea-Server. Dies stellt sicher, dass alle Dokumente als reine Markdown-Dateien versioniert und auch bei einem Datenbankausfall gesichert sind. * **Repository-URL:** `https://git.profice.de/it-docs/wiki-storage.git` * **Synchronisations-Modus:** Bidirektional (Push bei Änderungen im Wiki / Pull bei Änderungen im Repository). * **Authentifizierung:** Die Kopplung erfolgt über einen **Personal Access Token**, der in Gitea für den Dokumentations-Account generiert wurde. ### Konfigurationsschritte im Wiki: 1. Navigieren Sie zu **Administration > Storage**. 2. Wählen Sie **Git** aus der Liste der verfügbaren Storage-Module. 3. Tragen Sie die URL von `git.profice.de` und die entsprechenden Anmeldedaten ein. 4. Stellen Sie das Synchronisations-Intervall ein (Standard: 5 Minuten). --- ## 5. Verwendung und Best Practices ### 5.1 Editor-Wahl Für technische Dokumentationen ist zwingend der **Markdown-Editor** zu verwenden. Dies gewährleistet die volle Kompatibilität mit dem Gitea-Storage und ermöglicht eine saubere Versionskontrolle. ### 5.2 Medien und Anhänge Bilder sollten direkt per Drag-and-Drop in den Editor gezogen werden. Wiki.js speichert diese im lokalen `/assets` Verzeichnis, welches automatisch mit in das Git-Repository übertragen wird. ### 5.3 Zugriffsschutz Da das Wiki sensible Infrastruktur-Details enthält (wie z.B. n8n-Konfigurationen), ist der Zugriff strikt auf Benutzer innerhalb des **WireGuard-VPN-Tunnels** beschränkt. Traefik blockiert alle Anfragen, die von externen (öffentlichen) IP-Adressen kommen. --- ## 6. Wartung und Fehlerbehebung ### 6.1 System-Updates Die Wartung erfolgt über Docker. Vor jedem Update wird ein Snapshot der PostgreSQL-Datenbank empfohlen. ```bash # Verzeichnis der Docker-Installation aufrufen cd /opt/wiki-js # Neue Images ziehen und Container neu starten docker-compose pull docker-compose up -d ``` ### 6.2 Troubleshooting-Guide Falls Probleme mit der Instanz **wiki.profice.de** auftreten, nutzen Sie bitte die folgende Übersicht zur Fehlerbehebung: | Symptom | Mögliche Ursache | Lösung | | :--- | :--- | :--- | | **Gitea-Sync schlägt fehl** | Der Personal Access Token ist abgelaufen oder die Repository-Berechtigungen wurden geändert. | Erzeugen Sie einen neuen Token auf `git.profice.de` und aktualisieren Sie diesen in den Wiki.js Storage-Einstellungen. | | **Seite nicht erreichbar** | Die WireGuard-Verbindung ist inaktiv oder der Client befindet sich im falschen IP-Bereich. | Prüfen Sie Ihren VPN-Status. Stellen Sie sicher, dass der DNS-Server die IP korrekt auflöst. | | **Bilder laden nicht** | Die Git-Synchronisation hat einen Konflikt in den `/assets` erzeugt. | Überprüfen Sie das Repository auf `git.profice.de` auf Merge-Konflikte und führen Sie diese ggf. manuell zusammen. | | **"Bad Gateway" (502)** | Der Wiki.js-Container oder der Postgres-Container ist abgestürzt. | Prüfen Sie den Status mit `docker ps`. Starten Sie die Container mit `docker-compose restart` neu. | | **Änderungen fehlen** | Die bidirektionale Synchronisation ist verzögert. | Erzwingen Sie einen manuellen "Import" über das Administrations-Panel unter "Storage". | --- **Dokumentationsstatus:** Aktiv ✅ **Verantwortlich:** IT-Administration / DevOps **Letzte Aktualisierung:** 23.02.2026