So installieren Sie Wiki.js unter FreeBSD 11

Wiki.js ist eine kostenlose und Open Source moderne Wiki-App, die auf Node.js, MongoDB, Git und Markdown basiert. Der Quellcode von Wiki.j wird öffentlich auf Github gehostet . Diese Anleitung zeigt Ihnen, wie Sie Wiki.js auf einer neuen FreeBSD 11 Vultr-Instanz mithilfe von Node.js, MongoDB, PM2, Nginx, Git und Acme.sh installieren.

Bedarf

Die Anforderungen zum Ausführen von Wiki.js lauten wie folgt:

  • Node.js Version 6.11.1 oder höher
  • MongoDB Version 3.2 oder höher
  • Git Version 2.7.4 oder höher
  • Ein Webserver wie Nginx, Apache, IIS, Caddy oder H2O. In diesem Handbuch wird Nginx verwendet.
  • Ein Git-kompatibles Repository (öffentlich oder privat) Dies ist optional
  • Mindestens 512 MB RAM. Es wird dringend empfohlen, einen Computer mit mindestens 1 GB RAM zu verwenden.
  • Domainname mit A/ AAAADatensätzen eingerichtet. In diesem Handbuch werden wir wiki.example.comals Beispieldomäne verwenden.

Bevor Sie beginnen

Überprüfen Sie die FreeBSD-Version.

uname -ro
# FreeBSD 11.2-RELEASE

Stellen Sie sicher, dass Ihr FreeBSD-System auf dem neuesten Stand ist.

freebsd-update fetch install
pkg update && pkg upgrade -y

Installieren Sie sudo, vim, unzip, wget, git, bashund socatPakete , wenn sie nicht auf Ihrem System vorhanden sind.

pkg install -y sudo vim unzip wget git bash socat

Erstellen Sie ein neues Benutzerkonto mit Ihrem bevorzugten Benutzernamen (wir werden verwenden johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Führen Sie den visudoBefehl aus und kommentieren Sie die %wheel ALL=(ALL) ALLZeile aus, damit Mitglieder der wheelGruppe einen beliebigen Befehl ausführen können.

# Uncomment by removing the hash (#) sign
%wheel ALL=(ALL) ALL

Wechseln Sie nun zu Ihrem neu erstellten Benutzer.

su - johndoe

HINWEIS: Ersetzen Sie johndoedurch Ihren Benutzernamen.

Richten Sie die Zeitzone ein.

sudo tzsetup

Installieren Sie Node.js.

Für Wiki.js ist Node.js 6.11.1 oder höher erforderlich, daher müssen wir zuerst die entsprechende Version von Node.js installieren.

Installieren Sie Node.js und NPM.

sudo pkg install -y node8 npm-node8

Überprüfen Sie die Versionen.

node -v && npm -v
# v8.12.0
# 6.4.1

Installieren Sie MongoDB

Wiki.js verwendet MongoDB als Datenbankmodul.

Installieren Sie MongoDB.

sudo pkg install -y mongodb36

Überprüfe die Version.

mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.6
# db version v3.6.6

Aktivieren und starten Sie MongoDB.

sudo sysrc mongod_enable=yes
sudo service mongod start

Installieren Sie Acme.sh und erhalten Sie ein Let's Encrypt-Zertifikat ( optional ).

Das Sichern Ihres Wikis mit HTTPS ist nicht erforderlich, es wird jedoch empfohlen, den Site-Verkehr zu sichern. Um ein SSL-Zertifikat von Let's Encrypt zu erhalten, verwenden wir den Acme.sh-Client. Acme.sh ist eine reine Unix-Shell-Software zum Abrufen von SSL-Zertifikaten von Let's Encrypt ohne Abhängigkeiten. Dies macht es im Vergleich zu einigen anderen Acme-Protokoll-Clients, die viele Abhängigkeiten erfordern, um erfolgreich ausgeführt zu werden, sehr leicht.

Laden Sie Acme.sh herunter und installieren Sie es.

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~

Überprüfen Sie die acme.shVersion.

/etc/letsencrypt/acme.sh --version
# v2.8.0

Erhalten Sie RSA- und ECDSA-Zertifikate für wiki.example.com.

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d wiki.example.com --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d wiki.example.com --ocsp-must-staple --keylength ec-256

Nachdem Sie die obigen Befehle ausgeführt haben, befinden sich Ihre Zertifikate und Schlüssel in den folgenden Verzeichnissen:

  • RSA: /etc/letsencrypt/wiki.example.com
  • ECC / ECDSA: /etc/letsencrypt/wiki.example.com_ecc

HINWEIS: Vergessen Sie nicht, durch wiki.example.comIhren Domainnamen zu ersetzen .

Nachdem wir Zertifikate von Let's Encrypt erhalten haben, müssen wir Nginx konfigurieren, um sie nutzen zu können.

Installieren und konfigurieren Sie Nginx

Wiki.js kann ohne tatsächlichen Webserver ausgeführt werden. Es wird jedoch dringend empfohlen, einen Standard-Webserver davor zu stellen. Dies stellt sicher, dass Sie Funktionen wie SSL, mehrere Websites, Caching und andere verwenden können. Wir werden Nginx in diesem Tutorial verwenden, aber jeder andere Server wird es tun, Sie müssen es nur richtig konfigurieren.

Installieren Sie Nginx.

sudo pkg install -y nginx

Überprüfe die Version.

nginx -v
# nginx version: nginx/1.14.0

Aktivieren und starten Sie Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Konfigurieren Sie Nginx als HTTPS-Reverse-Proxy (wenn Sie SSL verwenden) für die Anwendung Wiki.js.

Führen Sie es aus sudo vim /usr/local/etc/nginx/wiki.js.confund füllen Sie es mit der folgenden grundlegenden Reverse-Proxy-Konfiguration.

server {

  listen [::]:443 ssl http2;
  listen 443 ssl http2;
  listen [::]:80;
  listen 80;

  server_name wiki.example.com;

  charset utf-8;
  client_max_body_size 50M;

  # RSA
  ssl_certificate /etc/letsencrypt/wiki.example.com/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/wiki.example.com/wiki.example.com.key;
  # ECDSA
  ssl_certificate /etc/letsencrypt/wiki.example.com_ecc/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/wiki.example.com_ecc/wiki.example.com.key;

  location / {
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass http://127.0.0.1:3000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_next_upstream error timeout http_502 http_503 http_504;
  }

}

Das einzige, was Sie in der obigen Konfiguration ändern müssen, ist die server_nameDirektive und möglicherweise die proxy_passDirektive, wenn Sie sich entscheiden, einen anderen Port als zu konfigurieren 3000. Wiki.js verwendet 3000standardmäßig den Port . Speichern Sie die Datei und beenden Sie sie mit :+ W+Q

Jetzt müssen wir die wiki.js.confDatei in die Hauptdatei aufnehmen nginx.conf.

Führen sudo vim /usr/local/etc/nginx/nginx.confSie die folgende Zeile aus und fügen Sie sie dem http {}Block hinzu.

include wiki.js.conf;

Überprüfen Sie die Konfiguration.

sudo nginx -t

Laden Sie Nginx neu.

sudo service nginx reload

Installieren Sie Wiki.js

Erstellen Sie einen leeren Dokumentstammordner, in dem Wiki.js installiert wird.

sudo mkdir -p /usr/local/www/wiki.example.com

Navigieren Sie zum Dokumentstammordner.

cd /usr/local/www/wiki.example.com

Ändern Sie den Besitz des /usr/local/www/wiki.example.comOrdners in Benutzer johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/wiki.example.com

/usr/local/www/wiki.example.comFühren Sie im Ordner die folgenden Befehle aus, um Wiki.js herunterzuladen und zu installieren.

curl -sSo- https://wiki.js.org/install.sh | bash

VERSION=$(curl -L -s -S https://beta.requarks.io/api/version/stable)
curl -L -s -S https://github.com/Requarks/wiki/releases/download/v$VERSION/wiki-js.tar.gz | tar -f - -xz -C .
curl -L -s -S https://github.com/Requarks/wiki/releases/download/v$VERSION/node_modules.tar.gz | tar -f - -xz -C .
cp -n config.sample.yml config.yml

Sie können den folgenden Befehl ausführen, um die aktuell installierte Version von Wiki.js anzuzeigen.

node wiki --version
# 1.0.102

Nach Abschluss der Installation werden Sie aufgefordert, den Konfigurationsassistenten auszuführen.

Starten Sie den Konfigurationsassistenten durch Ausführen.

node wiki configure

Dadurch werden Sie benachrichtigt, zu navigieren, http://localhost:3000um Wiki.js zu konfigurieren. Wenn Sie Nginx vor Wiki.js haben, bedeutet dies, dass Sie Ihren Domain-Namen (z. B. http://wiki.example.com) öffnen können, anstatt zu localhost zu gehen.

Navigieren Sie mit Ihrem Webbrowser zu http://wiki.example.comden Anweisungen auf dem Bildschirm und befolgen Sie diese. Alle während des Konfigurationsassistenten eingegebenen Einstellungen werden in der config.ymlDatei gespeichert. Der Konfigurationsassistent startet automatisch Wiki.js für Sie.

Installieren und einrichten Sie den PM2-Prozessmanager

Standardmäßig wird Wiki.js nach einem Systemneustart nicht automatisch gestartet. Damit es beim Booten gestartet werden kann, müssen wir PM2 Process Manager installieren und einrichten.

Installieren Sie PM2 global über npm.

sudo npm install -g pm2

Überprüfe die Version.

pm2 -v
# 3.2.2

Navigieren Sie zu Ihrem Dokumentstammordner, falls Sie noch nicht dort sind, und beenden Sie Wiki.js.

cd /usr/local/www/wiki.example.com
node wiki stop

Starten Sie Wiki.js über PM2.

pm2 start server/index.js --name "Wiki.js"

Listenprozess von PM2 verwaltet.

pm2 list

Weisen Sie PM2 an, sich selbst als Startdienst zu konfigurieren, indem Sie Folgendes ausführen:

pm2 startup

Speichern Sie abschließend die aktuelle PM2-Konfiguration, indem Sie den folgenden Befehl ausführen:

pm2 save

Ihre Wiki.js-Instanz wird jetzt als Hintergrundprozess ausgeführt und verwendet PM2 als Prozessmanager.



Leave a Comment

So installieren Sie Blacklistd unter FreeBSD 11.1

So installieren Sie Blacklistd unter FreeBSD 11.1

Einführung Jeder Dienst, der mit dem Internet verbunden ist, ist ein potenzielles Ziel für Brute-Force-Angriffe oder ungerechtfertigten Zugriff. Es gibt Tools wie fail2ba

So installieren Sie Osclass unter FreeBSD 12

So installieren Sie Osclass unter FreeBSD 12

Verwenden Sie ein anderes System? Osclass ist ein Open Source-Projekt, mit dem Sie auf einfache Weise eine klassifizierte Site ohne technisches Wissen erstellen können. Seine Quelle

So installieren Sie Couch CMS 2.0 auf einem FreeBSD 11 FAMP VPS

So installieren Sie Couch CMS 2.0 auf einem FreeBSD 11 FAMP VPS

Verwenden Sie ein anderes System? Couch CMS ist ein einfaches und flexibles, kostenloses und Open-Source-Content-Management-System (CMS), mit dem Webdesigner entwerfen können

So installieren Sie Lychee 3.1 Photo Album auf einem FreeBSD 11 FAMP VPS

So installieren Sie Lychee 3.1 Photo Album auf einem FreeBSD 11 FAMP VPS

Verwenden Sie ein anderes System? Lychee 3.1 Photo Album ist ein einfaches und flexibles, kostenloses Open-Source-Tool zur Fotoverwaltung, das auf einem VPS-Server ausgeführt wird. Es wird installiert

Installieren von Fork CMS unter FreeBSD 12

Installieren von Fork CMS unter FreeBSD 12

Verwenden Sie ein anderes System? Fork ist ein Open-Source-CMS, das in PHP geschrieben wurde. Der Forks-Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen, wie Sie Fork CM installieren

Erstellen Sie eine Auslagerungsdatei unter FreeBSD 10

Erstellen Sie eine Auslagerungsdatei unter FreeBSD 10

Vultr FreeBSD-Server sind standardmäßig nicht so konfiguriert, dass sie Swap Space enthalten. Wenn Sie eine Einweg-Cloud-Instanz beabsichtigen, brauchen Sie diese wahrscheinlich nicht

So ändern Sie die Größe einer Festplatte in FreeBSD

So ändern Sie die Größe einer Festplatte in FreeBSD

Das FreeBSD-Betriebssystem verwendet UFS (Unix File System) für sein Root-Partitions-Dateisystem. sonst bekannt als freebsd-ufs Im Falle eines Upgrades

So installieren Sie Matomo Analytics unter FreeBSD 11

So installieren Sie Matomo Analytics unter FreeBSD 11

Verwenden Sie ein anderes System? Matomo (ehemals Piwik) ist eine Open Source-Analyseplattform, eine offene Alternative zu Google Analytics. Matomo Quelle wird gehostet o

So aktivieren Sie TLS 1.3 in Nginx unter FreeBSD 12

So aktivieren Sie TLS 1.3 in Nginx unter FreeBSD 12

Verwenden Sie ein anderes System? TLS 1.3 ist eine Version des TLS-Protokolls (Transport Layer Security), das 2018 als vorgeschlagener Standard in RFC 8446 veröffentlicht wurde

So installieren Sie Backdrop CMS auf einem FreeBSD 11 FAMP VPS

So installieren Sie Backdrop CMS auf einem FreeBSD 11 FAMP VPS

Verwenden Sie ein anderes System? Hintergrund CMS 1.8.0 ist ein einfaches und flexibles, mobilfreundliches, kostenloses und Open Source Content Management System (CMS), das es uns ermöglicht

So installieren Sie ImpressPages CMS 5.0 auf einem FreeBSD 11 FAMP VPS

So installieren Sie ImpressPages CMS 5.0 auf einem FreeBSD 11 FAMP VPS

Verwenden Sie ein anderes System? ImpressPages CMS 5.0 ist ein einfaches und effektives, kostenloses und Open Source, benutzerfreundliches, MVC-basiertes Content Management System (CMS).

Installieren Sie eSpeak unter FreeBSD 12

Installieren Sie eSpeak unter FreeBSD 12

Verwenden Sie ein anderes System? ESpeak kann TTS-Audiodateien (Text-to-Speech) generieren. Diese können aus vielen Gründen nützlich sein, z. B. um Ihr eigenes Turin zu erstellen

So installieren Sie LimeSurvey CE unter FreeBSD 12

So installieren Sie LimeSurvey CE unter FreeBSD 12

Verwenden Sie ein anderes System? LimeSurvey ist eine Open-Source-Umfragesoftware, die in PHP geschrieben wurde. Der LimeSurvey-Quellcode wird auf GitHub gehostet. Diese Anleitung zeigt Ihnen

So installieren Sie Monica unter FreeBSD 12

So installieren Sie Monica unter FreeBSD 12

Verwenden Sie ein anderes System? Monica ist ein Open-Source-System für das persönliche Beziehungsmanagement. Stellen Sie sich das als CRM vor (ein beliebtes Tool, das von Verkaufsteams in th verwendet wird

So installieren Sie Automad CMS unter FreeBSD 12

So installieren Sie Automad CMS unter FreeBSD 12

Verwenden Sie ein anderes System? Automad ist ein Open Source File-basiertes Content Management System (CMS) und eine in PHP geschriebene Template Engine. Der Automad-Quellcode i

Auswählen eines Betriebssystems: CentOS, Ubuntu, Debian, FreeBSD, CoreOS oder Windows Server

Auswählen eines Betriebssystems: CentOS, Ubuntu, Debian, FreeBSD, CoreOS oder Windows Server

Dieser Artikel enthält eine kurze Übersicht über die Server-Betriebssysteme, die als Vorlagen für Vultr angeboten werden. CentOS CentOS ist eine Open-Source-Version von RHEL (Re

Radio-Streaming auf FreeBSD 10 mit IceCast und Ices

Radio-Streaming auf FreeBSD 10 mit IceCast und Ices

Im folgenden Tutorial wird erläutert, wie Sie einen IceCast-Radio-Streaming-Server einrichten und Audiodateien (Musik oder Podcasts) auf der FreeBSD-Plattform abspielen. Diese Tutoria

So installieren Sie Omeka Classic 2.4 CMS auf einem FreeBSD 11 FAMP VPS

So installieren Sie Omeka Classic 2.4 CMS auf einem FreeBSD 11 FAMP VPS

Verwenden Sie ein anderes System? Omeka Classic 2.4 CMS ist eine kostenlose Open-Source-Plattform für digitales Publizieren und Content Management System (CMS) für den Austausch von Digita

So sichern Sie FreeBSD mit der PF Firewall

So sichern Sie FreeBSD mit der PF Firewall

Dieses Tutorial zeigt Ihnen, wie Sie Ihren FreeBSD-Server mithilfe der OpenBSD PF-Firewall schützen. Wir gehen davon aus, dass Sie eine saubere FreeBSD-Installation bereitgestellt haben. B.

So installieren Sie WonderCMS unter FreeBSD 12

So installieren Sie WonderCMS unter FreeBSD 12

Verwenden Sie ein anderes System? WonderCMS ist ein Open Source, schnelles und kleines Flatfile-CMS, das in PHP geschrieben wurde. WonderCMS-Quellcode wird auf Github gehostet. Dieser Leitfaden wird

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.