GNU/Linux >> LINUX-Kenntnisse >  >> Fedora

So installieren Sie Wiki.js auf NodeJS-Basis auf Fedora 29

Wiki.js ist eine moderne und leistungsstarke Open-Source-Wiki-App, die auf Node.js, Git und Markdown basiert. Wiki.js läuft auf der blitzschnellen Node.js-Engine und ist optimiert, um CPU-Ressourcen zu sparen. Einige der erwähnenswerten Funktionen von Wiki.js sind:

  • Markdown-Bearbeitung, unterstützt von Git
  • Leicht und dennoch extrem leistungsstark
  • Wunderschönes Design für das moderne Web
  • Integrierte Zugriffskontrolle
  • Intuitive Vermögensverwaltung
  • Integrierte Suchmaschine

In diesem Tutorial führen wir Sie durch den Installationsprozess von Wiki.js Version 1 auf einem Fedora 29-Betriebssystem, indem wir NGINX als Reverse-Proxy-Server, MongoDB als Datenbankserver, PM2 als Prozessmanager und optional die sichere Transportschicht verwenden indem Sie acme.sh verwenden client und Let's Encrypt Zertifizierungsstelle, um SSL-Unterstützung hinzuzufügen.

Anforderungen

Anforderungen zum Ausführen von Wiki.js sind die folgenden:

  • Node.js 6.11.1 bis 10.x
  • MongoDB Version 3.2 oder höher.
  • Git-Version 2.7.4 oder höher.
  • Webserver-Software wie NGINX, Apache, Caddy, H2O...
  • Ein leeres Git-Repository (optional).
  • Mindestens 512 MB RAM. 1 GB RAM empfohlen.
  • Etwa 300 MB Speicherplatz.
  • Domainname mit A/AAAA DNS Einträgen eingerichtet.

Voraussetzungen

  • Ein Fedora 29-Betriebssystem.
  • Ein Nicht-Root-Benutzer mit sudo Privilegien.

Erste Schritte

Überprüfen Sie Ihre Fedora-Version:

cat /etc/fedora-release
# Fedora release 29 (Twenty Nine)

Richten Sie die Zeitzone ein:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Aktualisieren Sie Ihre Betriebssystempakete (Software). Dies ist ein wichtiger erster Schritt, da dadurch sichergestellt wird, dass Sie über die neuesten Updates und Sicherheitsfixes für die Standardsoftwarepakete Ihres Betriebssystems verfügen:

sudo dnf check-upgrade || sudo dnf upgrade -y

Installieren Sie einige wichtige Pakete, die für die grundlegende Verwaltung des Fedora-Betriebssystems erforderlich sind:

sudo dnf install -y curl wget vim git unzip socat bash-completion

Schritt 1 – Node.js und npm installieren

Wiki.js basiert auf Node.js. Wir werden die neueste empfohlene Version für Wiki.js installieren, die Version 10  ist zum Zeitpunkt dieses Schreibens. Unter Linux haben Sie einige Node.js-Installationsoptionen:Linux-Binärdateien (x86/x64), Quellcode oder über Paketmanager. Wir werden eine Paketverwaltungsoption verwenden, die das Installieren und Aktualisieren von Node.js zum Kinderspiel macht.

Laden Sie die neueste Long-Term Support (LTS)-Version von Node.js aus dem Fedora-Repo herunter und installieren Sie sie:

sudo dnf -y install nodejs

Um native Add-Ons von npm zu kompilieren und zu installieren, müssen Sie möglicherweise auch Build-Tools installieren:

sudo dnf install -y gcc-c++ make
# or
# sudo dnf groupinstall -y 'Development Tools'

HINWEISnpm wird mit Node.js verteilt – was bedeutet, dass Sie beim Herunterladen von Node.js automatisch npm auf Ihrem System installieren.

Überprüfen Sie die Node.js- und npm-Versionen:

node -v && npm -v
# v10.15.0
# 6.4.1

Npm ist ein separates Projekt von Node.js und wird tendenziell häufiger aktualisiert. Daher müssen Sie wahrscheinlich Ihr npm aktualisieren, selbst wenn Sie gerade Node.js (und damit npm) heruntergeladen haben. Glücklicherweise weiß npm, wie es sich selbst aktualisiert! Um Ihr npm zu aktualisieren, geben Sie Folgendes in Ihr Terminal ein:

sudo npm install -g [email protected]

Dieser Befehl aktualisiert npm auf die neueste stabile Version.

Überprüfen Sie die npm-Version erneut mit:

npm -v
# 6.7.0

Und es sollte die neueste Versionsnummer zurückgeben.

Schritt 2 – Installation der MongoDB-Datenbank

Wiki.js benötigt eine Datenbank, um seine Daten zu speichern, und die aktuelle stabile Version von Wiki.js unterstützt nur die MongoDB-Datenbank-Engine. Dementsprechend müssen wir die MongoDB-Datenbank installieren.

Laden Sie die MongoDB-Datenbank herunter und installieren Sie sie:

sudo dnf install -y mongodb mongodb-server

Überprüfen Sie die MongoDB-Version:

mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v4.0.1
# db version v4.0.1

Starten und aktivieren (festlegen, dass es beim Neustart gestartet wird ) MongoDB-Dienst, falls noch nicht gestartet und aktiviert:

sudo systemctl start mongodb.service
sudo systemctl enable mongodb.service

Schritt 3 – Installieren Sie acme.sh Client und erhalten Sie das Let's Encrypt-Zertifikat (optional )

Das Sichern Ihrer Website mit HTTPS ist nicht erforderlich, aber es ist eine bewährte Methode, den Datenverkehr Ihrer Website zu sichern. Um ein SSL-Zertifikat von Let's Encrypt zu erhalten, verwenden wir acme.sh Klient. Acme.sh ist eine reine UNIX-Shell-Software zum Erhalten von SSL-Zertifikaten von Let's Encrypt ohne Abhängigkeiten.

Laden Sie acme.sh herunter und installieren Sie es :

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
./acme.sh --install --accountemail [email protected]
source ~/.bashrc
cd ~

Überprüfen Sie acme.sh Version:

acme.sh --version
# v2.8.1

Fordern Sie RSA an und ECC/ECDSA Zertifikate für Ihre Domain/Ihren Hostnamen:

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Wenn Sie zum Testen gefälschte Zertifikate wünschen, können Sie --staging hinzufügen Flag zu den obigen Befehlen.

Um Ihre ausgestellten Zertifikate aufzulisten, können Sie Folgendes ausführen:

acme.sh --list

Erstellen Sie Ordner zum Speichern Ihrer Zertifikate. Wir verwenden /etc/letsencrypt aber es kann alles sein, was Sie bevorzugen, um SSL-Zertifikate zu speichern.

mkdir -p /etc/letsencrypt/example.com
mkdir -p /etc/letsencrypt/example.com_ecc

Installieren/kopieren Sie Zertifikate in das /etc/letsencrypt-Verzeichnis.

# RSA
acme.sh --install-cert -d example.com \
--cert-file /etc/letsencrypt/example.com/cert.pem \
--key-file /etc/letsencrypt/example.com/private.key \
--fullchain-file /etc/letsencrypt/example.com/fullchain.pem \
--reloadcmd "sudo systemctl reload nginx.service"

# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc \
--cert-file /etc/letsencrypt/example.com_ecc/cert.pem \
--key-file /etc/letsencrypt/example.com_ecc/private.key \
--fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem \
--reloadcmd "sudo systemctl reload nginx.service"

Nachdem Sie die obigen Befehle ausgeführt haben, werden Ihre Zertifikate und Schlüssel wird sein in:

  • Für RSA : /etc/letsencrypt/example.com Verzeichnis.
  • Für ECC/ECDSA : /etc/letsencrypt/example.com_ecc Verzeichnis.

Alle Zertifikate werden alle 60 Tage automatisch erneuert.

Verlassen Sie nach Erhalt der Zertifikate den Root-Benutzer und kehren Sie zum normalen sudo-Benutzer zurück:

exit

Schritt 4 – NGINX installieren und konfigurieren

Wiki.js (oder jede HTTP-Node.js-App) kann ohne einen tatsächlichen Webserver (wie NGINX oder Apache) ausgeführt werden. Es wird jedoch dringend empfohlen, einen Standard-Webserver vor Wiki.js zu stellen. Dadurch wird sichergestellt, dass Sie Funktionen wie SSL, mehrere Websites, Caching usw. verwenden können. Wir werden NGINX in diesem Tutorial verwenden, aber jeder andere Server reicht aus, Sie müssen ihn nur richtig konfigurieren.

Installieren Sie das Nginx-Paket, indem Sie den folgenden Befehl ausgeben:

sudo dnf install -y nginx

Nach der Installation können Sie die Nginx-Version überprüfen, indem Sie Folgendes ausführen:

nginx -v
# 1.14.1

Starten und aktivieren (festlegen, dass es beim Neustart gestartet wird ) Nginx-Dienst:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Führen Sie sudo vim /etc/nginx/conf.d/wiki.js.conf aus

sudo vim /etc/nginx/conf.d/wiki.js.conf

und konfigurieren Sie NGINX als HTTPS-Reverse-Proxy.

server {
    
listen [::]:443 ssl http2;
listen 443 ssl http2; listen [::]:80; listen 80; server_name example.com; charset utf-8; client_max_body_size 50M;

ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com/private.key;
ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.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 server_name Direktive, der Domänenname in den SSL-Dateipfaden und möglicherweise proxy_pass Anweisung, wenn Sie sich entscheiden, etwas anderes als 3000 zu konfigurieren Hafen. Wiki.js verwendet Port 3000 standardmäßig.

Überprüfen Sie die NGINX-Konfiguration:

sudo nginx -t

Damit die Änderungen wirksam werden, müssen wir NGINX neu laden:

sudo systemctl reload nginx.service

Schritt 5 – Wiki.js installieren und einrichten

Erstellen Sie ein Dokumentstammverzeichnis, in dem sich Wiki.js befinden soll:

sudo mkdir -p /var/www/wiki.js

Navigieren Sie zum Stammverzeichnis des Dokuments:

cd /var/www/wiki.js

Erstellen Sie einen Benutzer für Wikijs

sudo useradd -d /var/www/wiki.js wikijs

Ändern Sie den Besitz von /var/www/wiki.js Verzeichnis zum Wikijs-Benutzer:

sudo chown -R wikijs:wikijs /var/www/wiki.js

Von /var/www/wiki.js führen Sie den folgenden Befehl aus, um die neueste Wiki.js-Anwendung abzurufen und zu installieren:

cd /var/www/wiki.js
sudo su wikijs
curl -sSo- https://wiki.js.org/install.sh | bash

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

node wiki --version
# 1.0.117

Sobald die Installation abgeschlossen ist, werden Sie aufgefordert, den Konfigurationsassistenten zu starten.

Starten Sie also den Konfigurationsassistenten, indem Sie Folgendes ausführen:

node wiki configure

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

Zunächst sehen Sie eine Willkommensnachricht. Klicken Sie auf "Start". "-Schaltfläche:

Die nächste Seite „Systemprüfung“ wird angezeigt. Wenn alle Voraussetzungen erfüllt sind, klicken Sie auf „Weiter“. " Schaltfläche.

Geben Sie allgemeine Informationen zu Ihrem Wiki ein und klicken Sie auf „Weiter "-Schaltfläche:

Lesen Sie den Hinweis „Wichtiger Hinweis“ und klicken Sie auf „Weiter " für den nächsten Schritt: 

Stellen Sie als Nächstes eine Verbindung zur Datenbank her und fahren Sie fort: 

Sie sollten eine Meldung sehen, dass Wiki.js erfolgreich mit der Datenbank verbunden wurde. Klicken Sie auf „Weiter "-Schaltfläche:

Pfade festlegen und fortfahren:

Richten Sie bei Bedarf ein Remote-Git-Repository ein oder überspringen Sie diesen Schritt. Dieser Schritt ist optional, wird aber dringend empfohlen:

Klicken Sie anschließend auf die Schaltfläche „Weiter“:

Erstellen Sie ein Administratorkonto und klicken Sie auf „Weiter "-Schaltfläche:

Und schließlich starten Sie die Wiki.js:

Warten Sie etwa 30 Sekunden und Sie sollten zur Startseite von Wiki.js weitergeleitet werden:

Die Installation ist abgeschlossen. Sie sollten die Wiki-Willkommensseite:

Schritt 6 – PM2 Process Manager einrichten

Standardmäßig wird Wiki.js nach einem Systemneustart nicht automatisch gestartet. Damit es beim Booten startet, müssen wir den PM2-Prozessmanager einrichten. PM2 wird zusammen mit Wiki.js als lokales npm-Modul geliefert, sodass wir PM2 nicht global installieren müssen.

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

/var/www/wiki.js/node_modules/pm2/bin/pm2 startup

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

/var/www/wiki.js/node_modules/pm2/bin/pm2 save

Ihr Wiki.js läuft jetzt als Hintergrundprozess und verwendet PM2 als Prozessmanager.

  • https://wiki.js.org/
  • https://github.com/Requarks/wiki-v1
  • https://github.com/Requarks/wiki

Fedora
  1. So installieren Sie Node.js auf Fedora 35 / Fedora 34

  2. So installieren Sie Java 17 in Fedora 35

  3. So installieren Sie Notepad++ auf Fedora 35

  4. So installieren Sie Wireshark auf Fedora 35

  5. So installieren Sie npm unter alpinem Linux

So installieren Sie HandBrake in Fedora

So installieren Sie Fedora 34 Server

So installieren Sie PowerShell auf Fedora

So installieren Sie Skype auf Fedora 34 / 35

So installieren Sie Discord auf Fedora 34/35

So installieren Sie Go auf Fedora 35