GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat Wiki.js na CentOS 7

Wiki.js je moderní a výkonná wiki aplikace OpenSource 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 instalačním procesem Wiki.js verze 1 na operačním systému CentOS 7 pomocí NGINX jako reverzního proxy serveru, MongoDB jako databázového serveru, PM2 jako správce procesů a volitelně můžete zabezpečit transportní 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í:

  • Je vyžadován soubor Node.js 6.11.1 až 10.x.
  • MongoDB verze 3.2 nebo novější.
  • Git verze 2.7.4 nebo novější.
  • 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 CentOS 7.
  • Uživatel bez oprávnění root s sudo privilegia.

Počáteční kroky

Zkontrolujte verzi CentOS:

cat /etc/centos-release

Nastavte časové pásmo:

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

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 yum update -y

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

sudo yum install -y curl wget vim unzip socat epel-release

Wiki.js vyžaduje, abyste si nainstalovali Git verze 2.7.4 nebo vyšší. Výchozí verze Git na CentOS je příliš stará, takže ji budete muset sestavit ze zdrojového kódu. Zde jsou příkazy pro rychlou kompilaci:

# Remove existing git package if installed:
sudo yum remove -y git
sudo yum groupinstall -y "Development Tools"
sudo yum install -y gettext-devel openssl-devel perl-CPAN perl-devel zlib-devel curl-devel
wget https://mirrors.edge.kernel.org/pub/software/scm/git/git-2.21.0.tar.gz && tar zxvf git-2.21.0.tar.gz
rm git-2.21.0.tar.gz
cd git-2.21.0
make configure
./configure make prefix=/usr/local all
sudo make prefix=/usr/local install
cd ~
which git
git --version

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 --silent --location https://rpm.nodesource.com/setup_10.x | sudo bash -
sudo yum 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.

Vytvořte /etc/yum.repos.d/mongodb-org-4.0.repo abyste mohli nainstalovat MongoDB přímo pomocí yum.

Spustit:

sudo vim /etc/yum.repos.d/mongodb-org-4.0.repo

A naplňte soubor s následující konfigurací:

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc

Chcete-li nainstalovat nejnovější stabilní verzi MongoDB, zadejte následující příkaz:

sudo yum install -y mongodb-org

Zkontrolujte verzi MongoDB:

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

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 mongod.service
sudo systemctl enable mongod.service

Krok 3 – Nainstalujte klienta acme.sh 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í certifikátu SSL 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:

sudo yum install -y nginx

Zkontrolujte verzi NGINX:

nginx -v
# nginx version: nginx/1.12.2

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

Změňte vlastnictví /var/www/wiki.js adresář do vašeho_uživatele:

sudo chown -R [your_user]:[your_user] /var/www/wiki.js

POZNÁMKA:  Nahraďte your_user ve výše uvedeném příkazu svým uživatelem bez oprávnění root, kterého byste měli vytvořit jako předpoklad pro tento výukový program .

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

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 „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ěli byste vidět zprávu, ž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 „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

Cent OS
  1. Jak nainstalovat PHP 7, 7.2 a 7.3 na CentOS 7

  2. Jak nainstalovat Java 11 &12 na CentOS 7

  3. Jak nainstalovat Node.js a NPM na CentOS

  1. Jak nainstalovat Wine 4.0 na CentOS 7

  2. Jak nainstalovat Vim 8.2 na CentOS 7

  3. Jak nainstalovat VirtualBox na CentOS 7

  1. Jak nainstalovat Git na CentOS 8

  2. Jak nainstalovat Docker na CentOS 8

  3. Jak nainstalovat Java 8 &11 na Centos 8