GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nainstalovat Wiki.js na Ubuntu 18.04 LTS

Wiki.js je open source, moderní a výkonná wiki aplikace založená na Node.js, Git a Markdown. Wiki.js běží na bleskově rychlém enginu Node.js a je optimalizována tak, aby šetřila prostředky CPU. Některé z funkcí Wiki.js, které stojí za zmínku, jsou:

  • Úpravy Markdown, podporované Git
  • Lehký, ale extrémně výkonný
  • Krásně navrženo pro moderní web
  • Integrovaná kontrola přístupu
  • Intuitivní správa aktiv
  • Vestavěný vyhledávač

V tomto tutoriálu vás provedeme procesem instalace Wiki.js verze 1 na operačním systému Ubuntu 18.04 LTS pomocí NGINX jako reverzního proxy serveru, MongoDB jako databázového serveru, PM2 jako správce procesů a volitelně můžete zabezpečit přenos vrstvu pomocí acme.sh klient a certifikační autorita Let's Encrypt pro přidání podpory SSL.

Požadavky

Požadavky na spuštění Wiki.js jsou následující:

  • Node.js 6.11.1 do 10.x je vyžadováno.
  • Verze MongoDB 3.2 nebo později.
  • Verze Gitu 2.7.4 nebo později.
  • Software webového serveru, jako je NGINX, Apache, Caddy, H2O...
  • Prázdné úložiště Git (volitelné).
  • Minimálně 512 MB RAM. Doporučuje se 1 GB RAM.
  • Asi 300 MB místa na disku.
  • Název domény s nastavenými záznamy A/AAAA DNS.

Předpoklady

  • Operační systém Ubuntu 18.04 LTS.
  • Uživatel bez oprávnění root s funkcí sudo privilegia.

Počáteční kroky

Zkontrolujte svou verzi Ubuntu:

lsb_release -ds
# Ubuntu 18.04.1 LTS

Nastavte časové pásmo:

sudo dpkg-reconfigure tzdata

Aktualizujte balíčky operačního systému (software). Toto je důležitý první krok, protože zajišťuje, že máte nejnovější aktualizace a opravy zabezpečení pro výchozí softwarové balíčky vašeho operačního systému:

sudo apt update && sudo apt upgrade -y

Nainstalujte některé základní balíčky, které jsou nezbytné pro základní správu operačního systému Ubuntu:

sudo apt install -y curl wget vim git unzip socat bash-completion apt-transport-https build-essential

Krok 1 – Instalace Node.js a npm

Wiki.js je postavena na Node.js. Chystáme se nainstalovat nejnovější doporučenou verzi pro Wiki.js, což je verze 10  v době psaní tohoto článku. V Linuxu máte několik možností instalace Node.js:Linuxové binární soubory (x86/x64), zdrojový kód nebo prostřednictvím Správce balíčků. Použijeme možnost Package Management, díky které je instalace a aktualizace Node.js hračkou.

Stáhněte si a nainstalujte nejnovější doporučenou verzi Node.js z úložiště NodeSource:

curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs

POZNÁMKA : npm je distribuován s Node.js – což znamená, že když si stáhnete Node.js, automaticky se vám do systému nainstaluje npm.

Zkontrolujte verzi Node.js a npm:

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

Npm je samostatný projekt od Node.js a má tendenci se aktualizovat častěji. V důsledku toho, i když jste si právě stáhli Node.js (a tedy npm), budete pravděpodobně muset aktualizovat svůj npm. Naštěstí npm ví, jak se aktualizovat! Chcete-li aktualizovat své npm, zadejte toto do terminálu:

sudo npm install -g [email protected]

Tento příkaz aktualizuje npm na nejnovější stabilní verzi.

Znovu zkontrolujte verzi npm pomocí:

npm -v
# 6.8.0

A měl by vrátit číslo nejnovější verze.

Krok 2 – Instalace databáze MongoDB

Wiki.js potřebuje databázi k ukládání dat a aktuální stabilní verze Wiki.js podporuje pouze databázový stroj MongoDB. Podle toho budeme muset nainstalovat databázi MongoDB.

Stáhněte a nainstalujte databázi MongoDB:

sudo apt install -y mongodb

Zkontrolujte verzi MongoDB:

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

Spustit a povolit (nastavit spuštění při restartu ) Služba MongoDB, pokud ještě není spuštěna a povolena:

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

Krok 3 – Nainstalujte acme.sh klienta a získejte certifikát Let's Encrypt (volitelné )

Zabezpečení webu pomocí protokolu HTTPS není nutné, ale je dobrým zvykem zabezpečit provoz na webu. K získání SSL certifikátu od Let's Encrypt použijeme acme.sh klienta. Acme.sh je čistě UNIXový shell software pro získávání SSL certifikátů od Let's Encrypt s nulovými závislostmi.

Stáhněte a nainstalujte acme.sh :

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

Zkontrolujte acme.sh verze:

acme.sh --version
# v2.8.1

Získejte RSAECC/ECDSA certifikáty pro vaši doménu/název hostitele:

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

Pokud chcete falešné certifikáty pro testování, můžete přidat --staging flag na výše uvedené příkazy.

Chcete-li uvést své vydané certifikáty, můžete spustit:

acme.sh --list

Vytvářejte složky pro ukládání certifikátů. Použijeme /etc/letsencrypt ale může to být cokoliv, co dáváte přednost ukládání certifikátů SSL.

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

Nainstalujte/zkopírujte certifikáty do adresáře /etc/letsencrypt.

# 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"

Po spuštění výše uvedených příkazů budou vaše certifikátyklíče bude v:

  • Pro RSA : /etc/letsencrypt/example.com adresář.
  • Pro ECC/ECDSA : /etc/letsencrypt/example.com_ecc adresář.

Všechny certifikáty budou automaticky obnovovány každých 60 dní.

Po získání certifikátů ukončete uživatele root a vraťte se zpět k normálnímu uživateli sudo:

exit

Krok 4 – Instalace a konfigurace NGINX

Wiki.js (nebo jakákoli aplikace HTTP Node.js) může běžet bez jakéhokoli skutečného webového serveru (jako je NGINX nebo Apache). Důrazně se však doporučuje umístit před Wiki.js standardní webový server. To zajišťuje, že můžete používat funkce jako SSL, více webových stránek, ukládání do mezipaměti atd. V tomto tutoriálu použijeme NGINX, ale bude fungovat jakýkoli jiný server, stačí jej správně nakonfigurovat.

Stáhněte a nainstalujte NGINX z oficiálního repozitáře NGINX zadáním následujících příkazů:

wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx

Zkontrolujte verzi NGINX:

sudo nginx -v
# nginx version: nginx/1.15.8

Povolte a spusťte službu NGINX:

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

Spusťte sudo vim /etc/nginx/conf.d/wiki.js.conf

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

a nakonfigurujte NGINX jako reverzní proxy HTTPS.

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; } }

Jediná věc, kterou musíte ve výše uvedené konfiguraci změnit, je server_name direktiva, název domény v cestách k souboru ssl a případně proxy_pass Pokud se rozhodnete nakonfigurovat něco jiného než 3000 přístav. Wiki.js používá port 3000 ve výchozím nastavení.

Zkontrolujte konfiguraci NGINX:

sudo nginx -t

Aby se změny projevily, musíme znovu načíst NGINX:

sudo systemctl reload nginx.service

Krok 5 – Instalace a nastavení Wiki.js

Vytvořte kořenový adresář dokumentu, kde by měla být Wiki.js:

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

Přejděte do kořenového adresáře dokumentu:

cd /var/www/wiki.js

Vytvořte uživatele pro wikijs

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

Změňte vlastnictví /var/www/wiki.js adresář pro uživatele wikijs:

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

/var/www/wiki.js adresáře, spusťte následující příkaz k načtení a instalaci nejnovější aplikace Wiki.js:

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

Po dokončení instalace můžete spustit následující příkaz a zobrazit aktuálně nainstalovanou verzi Wiki.js:

node wiki --version
# 1.0.117

Po dokončení instalace budete vyzváni ke spuštění průvodce konfigurací.

Spusťte tedy průvodce konfigurací spuštěním:

node wiki configure

Pomocí webového prohlížeče přejděte na http://example.com a postupujte podle pokynů na obrazovce. Všechna nastavení zadaná během průvodce konfigurací jsou uložena v config.yml soubor. Průvodce konfigurací za vás automaticky spustí Wiki.js.

Nejprve se zobrazí uvítací zpráva. Klikněte na „Start tlačítko ":

Zobrazí se další stránka „Kontrola systému“. Pokud jsou splněny všechny požadavky, klikněte na „Pokračovat “.

Zadejte obecné informace o své wiki a klikněte na tlačítko "Pokračovat tlačítko ":

Přečtěte si upozornění „Důležitá úvaha“ a klikněte na „Pokračovat " pro další krok: 

Dále se připojte k databázi a pokračujte: 

Měla by se zobrazit zpráva, že Wiki.js  byla úspěšně připojena k databázi. Klikněte na tlačítko Pokračovat tlačítko ":

Nastavte cesty a pokračujte:

Pokud chcete, nastavte vzdálené úložiště Git nebo tento krok přeskočte. Tento krok je volitelný, ale vysoce doporučený:

Dále klikněte na tlačítko "Pokračovat":

Vytvořte si účet správce a klikněte na tlačítko Pokračovat tlačítko ":

A nakonec spusťte Wiki.js:

Počkejte asi 30 sekund a měli byste být přesměrováni na domovskou stránku Wiki.js:

Instalace je dokončena. Měli byste vytvořit uvítací stránku wiki:

Krok 6 – Nastavení správce procesů PM2

Ve výchozím nastavení se Wiki.js nespustí automaticky po restartu systému. Aby se to spustilo při bootování, musíme nastavit správce procesů PM2. PM2 je dodáván s Wiki.js jako místní modul npm, takže PM2 nemusíme instalovat globálně.

Řekněte PM2, aby se nakonfiguroval jako spouštěcí služba spuštěním:

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

Nakonec uložte aktuální konfiguraci PM2 spuštěním příkazu:

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

Vaše Wiki.js nyní běží jako proces na pozadí a jako správce procesů používá PM2.

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

Ubuntu
  1. Jak nainstalovat Docker na Ubuntu 22.04 / 20.04 LTS

  2. Jak nainstalovat PlayOnLinux na Ubuntu 20.04 LTS

  3. Jak nainstalovat MariaDB v Ubuntu 20.04 LTS

  1. Jak nainstalovat Ansible na Ubuntu 20.04 LTS / 21.04

  2. Jak nainstalovat Minikube na Ubuntu 20.04 LTS / 21.04

  3. Jak nainstalovat Spotify na Ubuntu 18.04 LTS

  1. Jak nainstalovat Prometheus na Ubuntu 18.04 LTS

  2. Jak nainstalovat Memcached na Ubuntu 18.04 LTS

  3. Jak nainstalovat VestaCP na Ubuntu 18.04 LTS