Kaip įdiegti Wiki.js „Fedora 28“.

Wiki.js yra nemokama atvirojo kodo moderni wiki programa, sukurta naudojant Node.js, MongoDB, Git ir Markdown. Wiki.js šaltinio kodas viešai priglobtas Github . Šiame vadove bus parodyta, kaip įdiegti Wiki.js naujame Fedora 28 Vultr egzemplioriuje naudojant Node.js, MongoDB, PM2, Nginx, Git ir Acme.sh.

Reikalavimai

Reikalavimai norint paleisti Wiki.js yra šie:

  • Node.js 6.9.0 arba naujesnė versija
  • MongoDB 3.2 ar naujesnė versija
  • Žiniatinklio serveris, pvz., Nginx, Apache, IIS, Caddy arba H2O. Šiame vadove bus naudojamas Nginx
  • Git versija 2.7.4 arba naujesnė
  • Su Git suderinama saugykla (vieša arba privati) Tai neprivaloma
  • Mažiausiai 768 MB RAM
  • Domeno vardas su nustatyta A/ AAAAįrašais

Prieš tau pradedant

Patikrinkite OS versiją.

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

Sukurkite naują ne root vartotojo paskyrą su sudo prieiga ir perjunkite į ją.

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

PASTABA: pakeiskite johndoesavo vartotojo vardu.

Įsitikinkite, kad jūsų sistema yra atnaujinta.

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

Nustatykite laiko juostą.

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

Įdiekite reikalingus ir naudingus paketus.

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

Kad būtų paprasčiau, išjunkite SELinux ir ugniasienę.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Įdiekite Node.js

Wiki.js reikalinga Node.js 6.9.0 arba naujesnė versija, todėl pirmiausia turėsime įdiegti Node.js.

Įdiekite Node.js.

sudo dnf install -y nodejs

Patikrinkite Node.js ir npm versijas.

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

Įdiekite MongoDB

Wiki.js naudoja MongoDB kaip duomenų bazės variklį. Atsižvelgiant į tai, savo serveryje turėsime įdiegti MongoDB.

Įdiekite MongoDB.

sudo dnf install -y mongodb mongodb-server

Patikrinkite MongoDB versiją.

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

Įgalinkite ir paleiskite MongoDB.

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

Įdiekite ir sukonfigūruokite „Nginx“.

Wiki.js gali veikti be jokio tikrojo žiniatinklio serverio (pvz., Nginx ar Apache). Tačiau labai rekomenduojama prieš Wiki.js įdėti standartinį žiniatinklio serverį. Tai užtikrina, kad galite naudoti tokias funkcijas kaip SSL, kelios svetainės, talpyklos kaupimas ir kt. Šioje pamokoje naudosime Nginx, bet tiks bet kuris kitas serveris, tereikia jį tinkamai sukonfigūruoti.

Įdiekite „Nginx“.

sudo dnf install -y nginx

Patikrinkite versiją.

nginx -v
# nginx version: nginx/1.12.1

Įgalinkite ir paleiskite „Nginx“.

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

Sukonfigūruokite „Nginx“ kaip „Wiki.js“ programos atvirkštinį tarpinį serverį HTTParba HTTPS(jei naudojate SSL).

Paleiskite sudo vim /etc/nginx/conf.d/wiki.js.confir užpildykite jį naudodami toliau pateiktą pagrindinę atvirkštinio tarpinio serverio konfigūraciją.

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

}

Vienintelis dalykas, kurį reikia pakeisti aukščiau pateiktoje konfigūracijoje, yra server_namedirektyva ir galbūt proxy_passdirektyva, jei nuspręsite sukonfigūruoti kitą prievadą nei 3000. Wiki.js 3000pagal numatytuosius nustatymus naudoja prievadą .

Patikrinkite konfigūraciją.

sudo nginx -t

Iš naujo įkelti Nginx.

sudo systemctl reload nginx.service

Įdiekite Acme.sh klientą ir gaukite Let's Encrypt sertifikatą (neprivaloma)

Apsaugoti savo wiki HTTPSnebūtina, tačiau tai yra gera praktika siekiant apsaugoti svetainės srautą. Norėdami gauti SSL sertifikatą iš Let's Encrypt, naudosime Acme.sh klientą. Acme.sh yra gryna unix apvalkalo programinė įranga, skirta gauti SSL sertifikatus iš Let's Encrypt be jokių priklausomybių. Dėl to jis labai lengvas, palyginti su kai kuriais kitais ACME protokolo klientais, kuriems norint sėkmingai veikti, reikia daug priklausomybių.

Atsisiųskite ir įdiekite 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 [email protected]
cd ~

Patikrinkite acme.shversiją.

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

Gaukite RSA ir ECDSA sertifikatus 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 

Paleidus aukščiau nurodytas komandas, jūsų sertifikatai ir raktai bus:

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

PASTABA : nepamirškite pakeisti wiki.example.comsavo domeno pavadinimu.

Gavę sertifikatus iš Let's Encrypt, turime sukonfigūruoti Nginx, kad galėtume jais pasinaudoti.

Paleiskite sudo vim /etc/nginx/conf.d/wiki.js.confdar kartą ir sukonfigūruokite „Nginx“ kaip HTTPSatvirkštinį tarpinį serverį.

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

}

Patikrinkite konfigūraciją.

sudo nginx -t

Iš naujo įkelti Nginx.

sudo systemctl reload nginx.service

Įdiekite Wiki.js

Sukurkite tuščią dokumento šakninį aplanką, kuriame turėtų būti įdiegtas Wiki.js.

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

Eikite į dokumento šakninį aplanką.

cd /var/www/wiki.example.com

Pakeiskite /var/www/wiki.example.comaplanko nuosavybės teisę į vartotoją johndoe.

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

/var/www/wiki.example.comaplanko paleiskite šią komandą, kad atsisiųstumėte ir įdiegtumėte Wiki.js.

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

Norėdami peržiūrėti šiuo metu įdiegtą Wiki.js versiją, galite paleisti šią komandą.

node wiki --version
# 1.0.78

Kai diegimas bus baigtas, būsite paraginti paleisti konfigūracijos vedlį.

Paleiskite konfigūracijos vedlį paleisdami.

node wiki configure

Tai jums praneš, kad reikia pereiti prie http://localhost:3000Wiki.js konfigūravimo. Jei turite Nginx prieš Wiki.js, tai reiškia, kad galite atidaryti savo domeno pavadinimą (pvz., http://wiki.example.com), o ne eiti į localhost.

Naudodami žiniatinklio naršyklę eikite į http://wiki.example.comir vykdykite ekrane pateikiamas instrukcijas. Visi konfigūracijos vedlio metu įvesti nustatymai išsaugomi config.ymlfaile. Konfigūracijos vedlys automatiškai paleis Wiki.js už jus.

Nustatykite PM2

Pagal numatytuosius nustatymus Wiki.js nebus paleistas automatiškai po sistemos perkrovimo. Kad jis prasidėtų įkrovos metu, turime nustatyti PM2 proceso tvarkyklę. PM2 pateikiamas kartu su Wiki.js kaip vietiniu NPM moduliu, todėl mums nereikia diegti PM2 visame pasaulyje.

Nurodykite PM2 konfigūruoti save kaip paleisties paslaugą, paleisdami:

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

Galiausiai išsaugokite dabartinę PM2 konfigūraciją vykdydami komandą: /var/www/wiki.example.com/node_modules/pm2/bin/pm2 save

Jūsų Wiki.js egzempliorius veikia kaip foninis procesas, naudojant PM2 kaip proceso tvarkyklę.


Kaip įdiegti „BigTree CMS“ Fedora 26 LAMP VPS

Kaip įdiegti „BigTree CMS“ Fedora 26 LAMP VPS

Naudojate kitą sistemą? BigTree CMS 4.2 yra greita ir lengva, nemokama ir atviro kodo, įmonės lygio turinio valdymo sistema (TVS), turinti platų

Kaip įdiegti „Koel“ „Fedora 28“.

Kaip įdiegti „Koel“ „Fedora 28“.

Naudojate kitą sistemą? „Koel“ yra paprasta žiniatinklio asmeninė garso transliacijos programa, parašyta „Vue“ kliento pusėje ir „Laravel“ serverio pusėje. Koe

Kaip įdiegti „Grav CMS“ „Fedora 28“.

Kaip įdiegti „Grav CMS“ „Fedora 28“.

Naudojate kitą sistemą? Grav yra atvirojo kodo plokščių failų TVS, parašyta PHP. „Grav“ šaltinio kodas viešai priglobtas „GitHub“. Šis vadovas parodys, kaip t

„Akaunting“ diegimas „Fedora 28“.

„Akaunting“ diegimas „Fedora 28“.

Naudojate kitą sistemą? Akaunting yra nemokama atvirojo kodo ir internetinė apskaitos programinė įranga, skirta mažoms įmonėms ir laisvai samdomiems darbuotojams. Jis pastatytas sąmojingai

Kaip įdiegti mažytį RSS skaitytuvą Fedora 26 LAMP VPS

Kaip įdiegti mažytį RSS skaitytuvą Fedora 26 LAMP VPS

Naudojate kitą sistemą? Tiny Tiny RSS Reader yra nemokama ir atviro kodo savarankiškai priglobta žiniatinklio naujienų kanalo (RSS/Atom) skaitytuvas ir kaupiklis, skirtas

Kaip įdiegti „InvoicePlane“ „Fedora 28“.

Kaip įdiegti „InvoicePlane“ „Fedora 28“.

Naudojate kitą sistemą? „InvoicePlane“ yra nemokama atvirojo kodo sąskaitų faktūrų išrašymo programa. Jo šaltinio kodą galite rasti šioje „Github“ saugykloje. Šis vadovas

Įdiekite „Minecraft“ serverį „Fedora 26“.

Įdiekite „Minecraft“ serverį „Fedora 26“.

Naudojate kitą sistemą? Šioje pamokoje aš padėsiu jums nustatyti „Minecraft“ serverį didelio našumo SSD VPS „Vultr“. Jūs išmoksite ho

Kaip kompiliuoti Nginx iš šaltinio Fedora 25

Kaip kompiliuoti Nginx iš šaltinio Fedora 25

Naudojate kitą sistemą? NGINX gali būti naudojamas kaip HTTP/HTTPS serveris, atvirkštinis tarpinis serveris, pašto tarpinis serveris, apkrovos balansavimo priemonė, TLS terminatorius arba talpykla.

Kaip įdiegti Pagekit 1.0 CMS Fedora 26 LAMP VPS

Kaip įdiegti Pagekit 1.0 CMS Fedora 26 LAMP VPS

Naudojate kitą sistemą? Pagekit 1.0 TVS yra graži, modulinė, išplečiama ir lengva, nemokama ir atviro kodo turinio valdymo sistema (TVS) su

Kaip įdiegti Subrion 4.1 CMS Fedora 26 LAMP VPS

Kaip įdiegti Subrion 4.1 CMS Fedora 26 LAMP VPS

Naudojate kitą sistemą? Subrion 4.1 TVS yra galinga ir lanksti atvirojo kodo turinio valdymo sistema (TVS), kuri suteikia intuityvų ir aiškų turinį

Įdiekite TaskServer (taskd) Fedora 26

Įdiekite TaskServer (taskd) Fedora 26

Naudojate kitą sistemą? TaskWarrior yra atvirojo kodo laiko valdymo įrankis, kuris yra Todo.txt programos ir jos klonų patobulinimas. Dėl th

Kaip įdiegti CMS Made Simple 2.2 Fedora 26 LAMP VPS

Kaip įdiegti CMS Made Simple 2.2 Fedora 26 LAMP VPS

Naudojate kitą sistemą? CMS Made Simple 2.2 yra lanksti ir išplečiama, nemokama ir atvirojo kodo turinio valdymo sistema (TVS), sumaniai sukurta

„Bro IDS“ diegimas „Fedora 25“.

„Bro IDS“ diegimas „Fedora 25“.

Naudojate kitą sistemą? Įvadas Bro yra atvirojo kodo tinklo srauto analizatorius. Tai visų pirma saugos monitorius, kuris tikrina visą eismą linijoje

Kaip įdiegti „Matomo Analytics“ „Fedora 28“.

Kaip įdiegti „Matomo Analytics“ „Fedora 28“.

Naudojate kitą sistemą? „Matomo“ (anksčiau „Piwik“) yra atvirojo kodo analizės platforma, atvira „Google Analytics“ alternatyva. Matomo šaltinis yra o

Kaip įdiegti „MyBB“ „Fedora 28“.

Kaip įdiegti „MyBB“ „Fedora 28“.

Naudojate kitą sistemą? MyBB yra nemokama atvirojo kodo, intuityvi ir išplečiama forumo programa. „MyBB“ šaltinio kodas yra „GitHub“. Šis vadovas padės

Kaip įdiegti ir konfigūruoti užduočių lentą „Fedora 30“.

Kaip įdiegti ir konfigūruoti užduočių lentą „Fedora 30“.

Naudojate kitą sistemą? Įvadas TaskBoard yra nemokamas atvirojo kodo įrankis, kurį galima naudoti norint sekti dalykus, kuriuos reikia atlikti. Tai suteikia

Kaip įdiegti „LimeSurvey CE“ „Fedora 28“.

Kaip įdiegti „LimeSurvey CE“ „Fedora 28“.

Naudojate kitą sistemą? LimeSurvey yra atvirojo kodo apklausų programa, parašyta PHP. LimeSurvey šaltinio kodas yra priglobtas GitHub. Šis vadovas jums parodys

Kaip įdiegti Backdrop CMS 1.8.0 Fedora 26 LAMP VPS

Kaip įdiegti Backdrop CMS 1.8.0 Fedora 26 LAMP VPS

Naudojate kitą sistemą? Backdrop CMS 1.8.0 yra paprasta ir lanksti, mobiliesiems pritaikyta nemokama ir atvirojo kodo turinio valdymo sistema (TVS), kuri leidžia mums

Kaip įdiegti „Craft CMS“ „Fedora 29“.

Kaip įdiegti „Craft CMS“ „Fedora 29“.

Naudojate kitą sistemą? Craft CMS yra atvirojo kodo TVS, parašyta PHP. „Craft CMS“ šaltinio kodas yra „GitHub“. Šis vadovas parodys, kaip įdiegti

Kaip įdiegti „Gitea“ „Fedora 29“.

Kaip įdiegti „Gitea“ „Fedora 29“.

Naudojate kitą sistemą? Gitea yra alternatyvi atvirojo kodo, savarankiškai priglobta versijų valdymo sistema, kurią maitina Git. Gitea parašyta golangu ir yra

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį