Kuidas installida Wiki.js programmi Fedora 28

Wiki.js on tasuta avatud lähtekoodiga kaasaegne vikirakendus, mis on üles ehitatud Node.js-ile, MongoDB-le, Gitile ja Markdownile. Wiki.js lähtekoodi majutatakse avalikult Githubis . See juhend näitab teile, kuidas installida Wiki.js värskele Fedora 28 Vultr eksemplarile, kasutades Node.js, MongoDB, PM2, Nginx, Git ja Acme.sh.

Nõuded

Wiki.js-i käivitamise nõuded on järgmised:

  • Node.js versioon 6.9.0 või uuem
  • MongoDB versioon 3.2 või uuem
  • Veebiserver, nagu Nginx, Apache, IIS, Caddy või H2O. See juhend kasutab Nginxit
  • Giti versioon 2.7.4 või uuem
  • Gitiga ühilduv hoidla (avalik või privaatne) See on valikuline
  • Vähemalt 768 MB RAM
  • Domeeninimi A/ AAAAkirjetega seadistatud

Enne alustamist

Kontrollige OS-i versiooni.

cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)

Looge uus sudo juurdepääsuga mitte-root kasutajakonto ja lülituge sellele.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

MÄRKUS. Asendage johndoeoma kasutajanimega.

Veenduge, et teie süsteem on ajakohane.

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

Seadistage ajavöönd.

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

Installige vajalikud ja kasulikud paketid.

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

Lihtsuse huvides keelake SELinux ja tulemüür.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Installige Node.js

Wiki.js nõuab versiooni Node.js 6.9.0 või uuemat, seega peame esmalt installima Node.js'i.

Installige Node.js.

sudo dnf install -y nodejs

Kontrollige Node.js ja npm versioone.

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

Installige MongoDB

Wiki.js kasutab andmebaasimootorina MongoDB-d. Vastavalt sellele peame installima oma serverisse MongoDB.

Installige MongoDB.

sudo dnf install -y mongodb mongodb-server

Kontrollige MongoDB versiooni.

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

Lubage ja käivitage MongoDB.

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

Installige ja konfigureerige Nginx

Wiki.js saab töötada ilma tegeliku veebiserverita (nt Nginx või Apache). Siiski on tungivalt soovitatav panna Wiki.js-i ette tavaline veebiserver. See tagab, et saate kasutada selliseid funktsioone nagu SSL, mitu veebisaiti, vahemällu salvestamine ja muud. Me kasutame selles õpetuses Nginxit, kuid iga teine ​​server teeb seda, peate selle lihtsalt õigesti konfigureerima.

Installige Nginx.

sudo dnf install -y nginx

Kontrolli versiooni.

nginx -v
# nginx version: nginx/1.12.1

Lubage ja käivitage Nginx.

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

Seadistage Nginx rakenduse Wiki.js jaoks pöördpuhverserverina HTTPvõi HTTPS(kui kasutate SSL-i) pöördpuhverserverina.

Käivitage sudo vim /etc/nginx/conf.d/wiki.js.confja sisestage see alloleva pöördpuhverserveri põhikonfiguratsiooniga.

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

}

Ainus, mida ülaltoodud konfiguratsioonis muutma pead, on server_namedirektiiv ja potentsiaalselt ka proxy_passdirektiiv, kui otsustate seadistada mõne muu pordi peale 3000. Wiki.js kasutab 3000vaikimisi porti .

Kontrollige konfiguratsiooni.

sudo nginx -t

Laadige Nginx uuesti.

sudo systemctl reload nginx.service

Installige Acme.sh klient ja hankige Let's Encrypt sertifikaat (valikuline)

Viki turvalisus HTTPSpole vajalik, kuid see on hea tava saidi liikluse turvamiseks. Let's Encrypti SSL-sertifikaadi saamiseks kasutame klienti Acme.sh. Acme.sh on puhas unixi kestatarkvara, mis võimaldab hankida Let's Encrypt SSL-sertifikaate ilma sõltuvusteta. See muudab selle väga kergeks võrreldes mõne teise ACME protokolli kliendiga, mis nõuavad edukaks töötamiseks palju sõltuvusi.

Laadige alla ja installige Acme.sh .

sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail your_email@example.com
cd ~

Kontrolli acme.shversiooni.

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

Hankige RSA ja ECDSA sertifikaadid 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 your_email@example.com --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 your_email@example.com --ocsp-must-staple --keylength ec-256 

Pärast ülaltoodud käskude käivitamist on teie sertifikaadid ja võtmed:

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

MÄRKUS . Ärge unustage asendada wiki.example.comoma domeeninimega.

Pärast Let's Encrypti sertifikaatide saamist peame Nginxi konfigureerima, et neid ära kasutada.

Käivitage sudo vim /etc/nginx/conf.d/wiki.js.confuuesti ja konfigureerige Nginx pöördpuhverserverina HTTPS.

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

}

Kontrollige konfiguratsiooni.

sudo nginx -t

Laadige Nginx uuesti.

sudo systemctl reload nginx.service

Installige Wiki.js

Looge tühi dokumendi juurkaust, kuhu tuleks installida Wiki.js.

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

Liikuge dokumendi juurkausta.

cd /var/www/wiki.example.com

Muutke /var/www/wiki.example.comkausta omandiõigus kasutajaks johndoe.

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

Alates /var/www/wiki.example.comkausta, käivitage järgmine käsk alla laadida ja installida Wiki.js.

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

Praegu installitud Wiki.js-i versiooni vaatamiseks saate käivitada järgmise käsu.

node wiki --version
# 1.0.78

Kui installimine on lõpetatud, palutakse teil käivitada konfiguratsiooniviisard.

Käivitage konfiguratsiooniviisard käivitades.

node wiki configure

See teavitab teid, et http://localhost:3000peaksite Wiki.js-i seadistamiseks navigeerima. Kui teil on Wiki.js-i ees Nginx, tähendab see, et saate avada oma domeeninime (nt http://wiki.example.com), selle asemel, et minna localhost.

Liikuge oma veebibrauseriga lehele http://wiki.example.comja järgige ekraanil kuvatavaid juhiseid. Kõik konfiguratsiooniviisardi käigus sisestatud seaded salvestatakse config.ymlfaili. Konfiguratsiooniviisard käivitab teie eest automaatselt Wiki.js'i.

PM2 seadistamine

Vaikimisi ei käivitu Wiki.js automaatselt pärast süsteemi taaskäivitamist. Selle käivitamiseks käivitamiseks peame seadistama PM2 protsessihalduri. PM2 on kohaliku NPM-moodulina komplektis Wiki.js-iga, nii et me ei pea PM2 globaalselt installima.

Öelge PM2-le, et ta konfigureeriks end käivitusteenusena, käivitades:

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

Lõpuks salvestage praegune PM2 konfiguratsioon, käivitades käsu: /var/www/wiki.example.com/node_modules/pm2/bin/pm2 save

Teie Wiki.js-i eksemplar töötab taustprotsessina, kasutades protsessihaldurina PM2.

Jäta kommentaar

Masinate tõus: AI tegelikud rakendused

Masinate tõus: AI tegelikud rakendused

Tehisintellekt ei ole tulevik, see on siin, olevikus. Sellest blogist loe, kuidas tehisintellekti rakendused on mõjutanud erinevaid sektoreid.

DDOS-i rünnakud: lühike ülevaade

DDOS-i rünnakud: lühike ülevaade

Kas olete ka DDOS-i rünnakute ohver ja olete segaduses ennetusmeetodite osas? Oma päringute lahendamiseks lugege seda artiklit.

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Kas olete kunagi mõelnud, kuidas häkkerid raha teenivad?

Võib-olla olete kuulnud, et häkkerid teenivad palju raha, kuid kas olete kunagi mõelnud, kuidas nad sellist raha teenivad? arutleme.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Googlei revolutsioonilised leiutised, mis muudavad teie elu lihtsaks.

Kas soovite näha Google'i revolutsioonilisi leiutisi ja seda, kuidas need leiutised muutsid iga inimese elu tänapäeval? Seejärel lugege ajaveebi, et näha Google'i leiutisi.

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Reede oluline osa: mis juhtus tehisintellektiga juhitavate autodega?

Isejuhtivate autode kontseptsioon tehisintellekti abil teedele jõudmiseks on meil juba mõnda aega unistus. Kuid vaatamata mitmele lubadusele pole neid kusagil näha. Lisateabe saamiseks lugege seda ajaveebi…

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Tehnoloogiline singulaarsus: inimtsivilisatsiooni kauge tulevik?

Kuna teadus areneb kiiresti, võttes üle suure osa meie jõupingutustest, suureneb ka oht, et allume seletamatule singulaarsusele. Loe, mida singulaarsus meie jaoks tähendada võiks.

Suurandmete viitearhitektuuri kihtide funktsioonid

Suurandmete viitearhitektuuri kihtide funktsioonid

Lugege ajaveebi, et kõige lihtsamal viisil teada saada Big Data Architecture'i erinevaid kihte ja nende funktsioone.

Andmesalvestuse areng – infograafik

Andmesalvestuse areng – infograafik

Andmete säilitamise meetodid on arenenud alates andmete sünnist. See ajaveeb käsitleb infograafiku alusel andmete salvestamise arengut.

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

6 hämmastavat eelist nutikate koduseadmete olemasolust meie elus

Selles digipõhises maailmas on nutikad koduseadmed muutunud elu oluliseks osaks. Siin on mõned nutikate koduseadmete hämmastavad eelised, mis muudavad meie elu elamisväärseks ja lihtsamaks.

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

macOS Catalina 10.15.4 täienduse värskendus põhjustab rohkem probleeme kui lahendamine

Hiljuti andis Apple välja macOS Catalina 10.15.4 täiendusvärskenduse probleemide lahendamiseks, kuid tundub, et värskendus põhjustab rohkem probleeme, mille tulemuseks on Maci masinate tellimine. Lisateabe saamiseks lugege seda artiklit