A Wiki.js telepítése Debian 9 rendszeren

A Wiki.js egy ingyenes és nyílt forráskódú, modern wikialkalmazás , amely Node.js-re, MongoDB-re, Git-re és Markdownra épül. Wiki.js forráskód nyilvánosan tárolt GitHub . Ez az útmutató bemutatja, hogyan telepítheti a Wiki.js-t egy friss Debian 9 Vultr példányra Node.js, MongoDB, PM2, Nginx, Git és Acme.sh használatával.

Követelmények

  • Node.js 6.9.0 vagy újabb
  • MongoDB 3.2 vagy újabb
  • Nginx
  • Git 2.7.4 vagy újabb
  • Git-kompatibilis adattár (nyilvános vagy privát) ( opcionális )
  • Minimum az 768MB RAM
  • Domain név a A/ AAAArekordokkal beállítva

Ellenőrizze a Debian verziót.

lsb_release -ds
# Debian GNU/Linux 9.4 (stretch)

Győződjön meg arról, hogy rendszere naprakész.

apt update && apt upgrade -y

Telepítse a szükséges csomagokat.

apt install -y build-essential apt-transport-https sudo curl wget dirmngr sudo

Hozzon létre egy új non-rootfelhasználói fiókot sudohozzáféréssel, és váltson rá.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

MEGJEGYZÉS : Cserélje johndoeki a felhasználónevét.

Állítsa be az időzónát.

sudo dpkg-reconfigure tzdata

Telepítse a Git-et

Telepítse a Git-et Debianra.

sudo apt install -y git

Ellenőrizze a Git verziót.

git --version
# git version 2.11.0

Telepítse a Node.js-t

Telepítse a Node.js fájlt a Node.js NodeSource APT lerakatának használatával.

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

Ellenőrizze a Node.js és npm verziókat.

node -v && npm -v
# v8.11.2
# 5.6.0

Telepítse a MongoDB-t

A Wiki.js a MongoDB-t használja adatbázismotorként. Ennek megfelelően telepítenünk kell a MongoDB-t a szerverünkre. A telepítéshez a hivatalos MongoDB adattárakat fogjuk használni .

Telepítse a MongoDB Community Edition-t.

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
echo "deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/3.6 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
sudo apt update
sudo apt install -y mongodb-org

Ellenőrizze a verziót.

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

Engedélyezze és indítsa el a MongoDB-t.

sudo systemctl enable mongod.service
sudo systemctl start mongod.service

Telepítse és konfigurálja az Nginx-et

Erősen ajánlott egy szabványos webszervert a Wiki.js elé tenni. Ez biztosítja, hogy olyan funkciókat használhasson, mint az SSL, több webhely, gyorsítótár és sok más. Ebben az oktatóanyagban az Nginxet fogjuk használni, de bármely más szerver megteszi, csak megfelelően kell konfigurálnia.

Telepítse az Nginx-et.

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/debian/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/debian/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx

Ellenőrizze a verziót.

sudo nginx -v
# nginx version: nginx/1.15.0

Engedélyezze és indítsa el az Nginxet.

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

Konfigurálja az Nginx-et a Wiki.js alkalmazáshoz HTTPvagy HTTPS(ha SSL-t használ) fordított proxyként.

Futtassa sudo vim /etc/nginx/conf.d/wiki.js.confés töltse fel az alábbi alapvető fordított proxykonfigurációval.

server {

    listen [::]:80;
    listen 80;

    server_name wiki.example.com;

    root /usr/share/nginx/html;

    charset utf-8;
    client_max_body_size 50M;

    location /.well-known/acme-challenge/ {
        allow all;
    }

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

}

Az egyetlen dolog, amit a fenti konfigurációban módosítani kell, az az server_namedirektíva, és potenciálisan a proxy_passdirektíva, ha úgy dönt, hogy a porton kívül más portot állít be 3000. A Wiki.js 3000alapértelmezés szerint a portot használja .

Ellenőrizze a konfigurációt.

sudo nginx -t

Töltse újra az Nginxet.

sudo systemctl reload nginx.service

Telepítse az Acme.sh-t, és szerezzen be egy Let's Encrypt tanúsítványt (opcionális)

A wiki biztonságossá tétele HTTPSnem szükséges, de jó gyakorlat a webhely forgalmának biztosítása. A Let's Encrypt SSL-tanúsítvány beszerzéséhez az Acme.sh klienst használjuk. Az Acme.sh egy tisztán unix shell szoftver SSL-tanúsítványok beszerzéséhez a Let's Encrypt-től nulla függőséggel. Ez nagyon könnyűvé teszi néhány más ACME protokoll klienshez képest, amelyek sok függőséget igényelnek a sikeres futtatáshoz.

Töltse le és telepítse az Acme.sh-t.

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 ~

Ellenőrizze a verziót.

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

Szerezzen be RSA és ECDSA tanúsítványt a következőhöz: wiki.example.com.

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d wiki.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d wiki.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength ec-256 

MEGJEGYZÉS : Ne felejtse el lecserélni wiki.example.coma domain nevét.

A fenti parancsok futtatása után a tanúsítványok és kulcsok a következő könyvtárakban lesznek.

  • RSA esetén: /etc/letsencrypt/wiki.example.comkönyvtár.
  • ECC/ECDSA esetén: /etc/letsencrypt/wiki.example.com_ecckönyvtár.

Miután megszereztük a Let's Encrypt tanúsítványait, konfigurálnunk kell az Nginxet, hogy kihasználjuk őket.

Futtassa sudo vim /etc/nginx/conf.d/wiki.js.confújra, és állítsa be az Nginx-et HTTPSfordított proxyként.

server {

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

    server_name wiki.example.com;

    root /usr/share/nginx/html;

    charset utf-8;
    client_max_body_size 50M;

    location /.well-known/acme-challenge/ {
        allow all;
    }

    # RSA
    ssl_certificate /etc/letsencrypt/wiki.example.com/fullchain.cer;
    ssl_certificate_key /etc/letsencrypt/wiki.example.com/example.com.key;
    # ECDSA
    ssl_certificate /etc/letsencrypt/wiki.example.com_ecc/fullchain.cer;
    ssl_certificate_key /etc/letsencrypt/wiki.example.com_ecc/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;
    }

}

Ellenőrizze a konfigurációt.

sudo nginx -t

Töltse újra az Nginxet.

sudo systemctl reload nginx.service

Telepítse a Wiki.js-t

Hozzon létre egy üres dokumentum gyökérmappát, ahová telepíteni kell a Wiki.js-t.

sudo mkdir -p /var/www/wiki.example.com

Navigáljon a dokumentum gyökérmappájához.

cd /var/www/wiki.example.com

A /var/www/wiki.example.commappa tulajdonjogának módosítása felhasználóra johndoe.

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

A /var/www/wiki.example.commappából futtassa a következő parancsot a Wiki.js letöltéséhez és telepítéséhez.

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

A következő parancs futtatásával megtekintheti a Wiki.js aktuálisan telepített verzióját.

node wiki --version
# 1.0.78

A telepítés befejezése után a rendszer felkéri a konfigurációs varázsló futtatására.

Indítsa el a konfigurációs varázslót a futtatással.

node wiki configure

Ez értesíti, hogy navigáljon ide a http://localhost:3000Wiki.js konfigurálásához. Ha Nginx van a Wiki.js előtt, akkor ez azt jelenti, hogy megnyithatja a domain nevét (pl. http://wiki.example.com) ahelyett, hogy a webhelyre menne localhost.

A webböngészővel keresse meg http://wiki.example.coma képernyőn megjelenő utasításokat , és kövesse azt. A konfigurációs varázsló során megadott összes beállítás a config.ymlfájlba kerül. A konfigurációs varázsló automatikusan elindítja a Wiki.js fájlt.

PM2 beállítása

Alapértelmezés szerint a Wiki.js nem indul el automatikusan a rendszer újraindítása után. Annak érdekében, hogy elinduljon a rendszerindításkor, be kell állítanunk a PM2 folyamatkezelőt. A PM2 helyi NPM-modulként a Wiki.js-szel együtt érkezik, így nem kell globálisan telepítenünk a PM2-t.

Mondja meg a PM2-nek, hogy konfigurálja magát indítási szolgáltatásként.

/var/www/wiki.example.com/node_modules/pm2/bin/pm2 startup

Végül mentse el az aktuális PM2 konfigurációt.

/var/www/wiki.example.com/node_modules/pm2/bin/pm2 save

A Wiki.js példány háttérfolyamatként fut, folyamatkezelőként a PM2-t használva. Újraindíthatja az operációs rendszert, sudo rebootés ellenőrizheti, hogy a Wiki.js elindul-e újraindítás után.


A Cacti beállítása a Debian Jessie-n

A Cacti beállítása a Debian Jessie-n

Bevezetés A Cacti egy nyílt forráskódú megfigyelő és grafikus eszköz, amely teljes mértékben az RRD adatokon alapul. A Cactuson keresztül szinte bármilyen típusú eszközt felügyelhet

Az iRedMail beállítása a Debian Wheezy rendszeren

Az iRedMail beállítása a Debian Wheezy rendszeren

Más rendszert használ? Ez az oktatóanyag megmutatja, hogyan telepítheti a csoportmunka iRedMail programot a Debian Wheezy friss telepítésére. Használnia kell egy szervát

Felügyelet nélküli frissítések beállítása Debian 9-en (Stretch)

Felügyelet nélküli frissítések beállítása Debian 9-en (Stretch)

Más rendszert használ? Ha Debian szervert vásárol, akkor mindig rendelkeznie kell a legújabb biztonsági javításokkal és frissítésekkel, akár alszik, akár nem

Állítsa be a saját DNS-kiszolgálóját a Debian/Ubuntu rendszeren

Állítsa be a saját DNS-kiszolgálóját a Debian/Ubuntu rendszeren

Ez az oktatóanyag elmagyarázza, hogyan állíthat be DNS-kiszolgálót a Bind9 használatával Debian vagy Ubuntu rendszeren. A cikkben ennek megfelelően helyettesítse be a saját-domain-neve.com címet. TH-nál

Fordítsa le és telepítse az Nginx-et a PageSpeed ​​Modul segítségével a Debian 8 rendszeren

Fordítsa le és telepítse az Nginx-et a PageSpeed ​​Modul segítségével a Debian 8 rendszeren

Ebben a cikkben látni fogjuk, hogyan fordíthatja le és telepítheti az Nginx fővonalat az Nginx hivatalos forrásaiból a PageSpeed ​​modullal, amely lehetővé teszi a

A Kanboard telepítése Debian 9 rendszeren

A Kanboard telepítése Debian 9 rendszeren

Más rendszert használ? Bevezetés A Kanboard egy ingyenes és nyílt forráskódú projektmenedzsment szoftver, amely megkönnyíti és vizualizálja

A Gitea telepítése Debian 9-re

A Gitea telepítése Debian 9-re

Más rendszert használ? A Gitea egy alternatív nyílt forráskódú, saját üzemeltetésű verziókezelő rendszer, amelyet a Git üzemeltet. A Gitea golang nyelven íródott, és az is

Telepítse a Lynis-t Debian 8-ra

Telepítse a Lynis-t Debian 8-ra

Bevezetés A Lynis egy ingyenes, nyílt forráskódú rendszer-ellenőrző eszköz, amelyet sok rendszergazda használ a rendszer integritásának ellenőrzésére és a rendszer megerősítésére. én

A Thelia 2.3 telepítése Debian 9 rendszeren

A Thelia 2.3 telepítése Debian 9 rendszeren

Más rendszert használ? A Thelia egy nyílt forráskódú eszköz e-üzleti webhelyek létrehozására és PHP-ben írt online tartalmak kezelésére. Thelia forráskód i

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is

A Golang 1.8.3 telepítése CentOS 7, Ubuntu 16.04 és Debian 9 rendszeren

A Golang 1.8.3 telepítése CentOS 7, Ubuntu 16.04 és Debian 9 rendszeren

A Golang a Google által kifejlesztett programozási nyelv. Sokoldalúságának, egyszerűségének és megbízhatóságának köszönhetően a Golang az egyik legnépszerűbb lett

Állítsa vissza a MySQL root jelszót Debian/Ubuntu rendszeren

Állítsa vissza a MySQL root jelszót Debian/Ubuntu rendszeren

Ha elfelejtette MySQL root jelszavát, visszaállíthatja azt az ebben a cikkben található lépések végrehajtásával. A folyamat meglehetősen egyszerű, és ezeken működik

Hálózati megosztások létrehozása a Samba használatával a Debian rendszeren

Hálózati megosztások létrehozása a Samba használatával a Debian rendszeren

Vannak esetek, amikor olyan fájlokat kell megosztanunk, amelyeket a Windows-kliensek láthatnak. Mivel a Fuse-alapú rendszerek csak Linuxon működnek, tessék bemutatni

A Counter Strike beállítása: Forrás Debianon

A Counter Strike beállítása: Forrás Debianon

Ebben az útmutatóban egy Counter Strike: Source játékszervert fogunk beállítani a Debian 7 rendszeren. Ezeket a parancsokat a Debian 7 rendszeren teszteltük, de működniük kell

Az Unturned 2.2.5 telepítése Debian 8 rendszeren

Az Unturned 2.2.5 telepítése Debian 8 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be egy Unturned 2.2.5 szervert Debian 8-at futtató Vultr VPS-en. Megjegyzés: Ez az Unturned szerkesztett változata, amely nem

A Cachet telepítése Debian 8 rendszeren

A Cachet telepítése Debian 8 rendszeren

Ebből az oktatóanyagból megtudhatja, hogyan telepítheti a Cachet Debian 8-ra. A Cachet egy hatékony, nyílt forráskódú állapotoldal-rendszer. Telepítés Ez a bemutató folyamatban van

Több MySQL vagy MariaDB adatbázis biztonsági mentése automatikusan

Több MySQL vagy MariaDB adatbázis biztonsági mentése automatikusan

Bevezetés Ebben az írásban részletesen végigvezeti, hogyan készíthet biztonsági másolatot több MySQL vagy MariaDB adatbázisról, amelyek ugyanazon a gépen vannak egy egyedi bash szkript segítségével.

Chroot beállítása Debianon

Chroot beállítása Debianon

Ez a cikk megtanítja Önnek, hogyan állítson be chroot börtönt a Debian rendszeren. Feltételezem, hogy a Debian 7.x-et használod. Ha Debian 6-ot vagy 8-at futtat, ez működhet, bu

A Reader Self 3.5 RSS Reader telepítése Debian 9 LAMP VPS-re

A Reader Self 3.5 RSS Reader telepítése Debian 9 LAMP VPS-re

Más rendszert használ? A Reader Self 3.5 egy egyszerű és rugalmas, ingyenes és nyílt forráskódú, saját üzemeltetésű RSS-olvasó és Google Reader alternatíva. Olvasó Sel

A Backdrop CMS 1.8.0 telepítése Debian 9 LAMP VPS-re

A Backdrop CMS 1.8.0 telepítése Debian 9 LAMP VPS-re

Más rendszert használ? A Backdrop CMS 1.8.0 egy egyszerű és rugalmas, mobilbarát, ingyenes és nyílt forráskódú tartalomkezelő rendszer (CMS), amely lehetővé teszi

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket