Kuidas installida Wiki.js süsteemi CentOS 7

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ärskesse CentOS 7 Vultr eksemplari, 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
  • Nginx
  • Giti versioon 2.7.4 või uuem
  • Gitiga ühilduv hoidla (avalik või privaatne) ( valikuline )
  • Vähemalt 768 MB RAM
  • Domeeninimi A/ AAAAkirjetega seadistatud

Kontrollige CentOS-i versiooni.

cat /etc/centos-release
# CentOS Linux release 7.5.1804 (Core)

Looge uus juurdepääsuga non-rootkasutajakonto sudoja lülituge sellele.

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

MÄRKUS . Asendage johndoeoma kasutajanimega .

Seadistage ajavöönd.

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

Veenduge, et teie süsteem on ajakohane.

sudo yum update -y

Selle õpetuse lõpetamiseks installige vajalikud paketid.

sudo yum install -y wget curl vim zip unzip bash-completion

Keelake SELinux ja tulemüür.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Lubage EPEL-i hoidla.

sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

Installige Git

CentOS-i hoidlad pakuvad Giti väga vananenud versiooni, seega peame Giti allikast üles ehitama.

Installige Git, ehitades selle lähtekoodist.

# 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.17.1.tar.gz && tar zxvf git-2.17.1.tar.gz
rm git-2.17.1.tar.gz
cd git-2.17.1
make configure
./configure
make prefix=/usr/local all
sudo make prefix=/usr/local install
cd ~

# Confirm this command returns /usr/local/bin/git:
which git

Kontrollige versiooni.

git --version
# git version 2.17.1

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, kasutades Node.js-i jaoks NodeSource YUM-i hoidlat.

curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
sudo yum install -y nodejs

Kontrollige Node.js ja NPM versioone.

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

Installige MongoDB

Wiki.js kasutab andmebaasimootorina MongoDB-d. Kasutame ametlikke MongoDB hoidlaid , mis sisaldavad MongoDB uusimaid suuremaid ja väiksemaid väljalaseid.

Installige MongoDB Community Edition.

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

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

sudo yum install -y mongodb-org

Kontrolli versiooni.

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

Lubage ja käivitage MongoDB.

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

Installige ja konfigureerige Nginx

Soovitatav on panna Wiki.js-i ette tavaline veebiserver. See tagab, et saate kasutada selliseid funktsioone nagu SSL, mitu veebisaiti, vahemällu salvestamine ja palju muud.

Installige Nginx.

sudo vim /etc/yum.repos.d/nginx_mainline.repo

# Copy/paste this
[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1

wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key
rm nginx_signing.key

sudo yum install -y nginx

Kontrolli versiooni.

nginx -v
# nginx version: nginx/1.15.0

Lubage ja käivitage Nginx.

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

Seadistage Nginx Wiki.js-i puhverserverina HTTPvõi HTTPSvastupidiseks puhverserveriks.

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 peate ülaltoodud konfiguratsioonis muutma, on server_namedirektiiv ja potentsiaalselt ka proxy_passdirektiiv, kui otsustate konfigureerida 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 UNIX-i kestaskript, 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 [email protected]
cd ~

Kontrolli versiooni.

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

Hankige oma domeeni/hostinime jaoks RSA ja ECDSA sertifikaadid.

# 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 

Pärast ülaltoodud käskude käivitamist asuvad teie sertifikaadid ja võtmed järgmistes kataloogides:

  • 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õppenud, palutakse teil käivitada konfiguratsiooniviisard.

Käivitage konfiguratsiooniviisard.

node wiki configure

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

Liikuge oma veebibrauseriga lehele http://wiki.example.comja järgige ekraanil kuvatavaid juhiseid. Kõik konfiguratsiooniviisardi käigus sisestatud sätted on config.ymlfaili salvestatud . 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 alglaadimisel peame seadistama PM2 protsessihalduri.

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

/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. Saate oma OS-i taaskäivitada sudo rebootja tagada, et Wiki.js käivitub pärast taaskäivitamist.


Installige Plesk operatsioonisüsteemi CentOS 7

Installige Plesk operatsioonisüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Plesk on patenteeritud veebihosti juhtpaneel, mis võimaldab kasutajatel hallata oma isiklikke ja/või klientide veebisaite, andmebaase

Kuidas installida CentOS-i Squid Proxy

Kuidas installida CentOS-i Squid Proxy

Squid on populaarne tasuta Linuxi programm, mis võimaldab teil luua edastamise veebipuhverserveri. Selles juhendis näete, kuidas installida Squid CentOS-i, et teid pöörata

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Lighttpd (LLMP Stack) installimine CentOS 6-sse

Sissejuhatus Lighttpd on Apache'i hark, mille eesmärk on olla palju vähem ressursimahukas. See on kerge, sellest ka oma nimi, ja seda on üsna lihtne kasutada. Installin

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

Staatilise võrgu ja IPv6 konfigureerimine CentOS 7-s

VULTR on hiljuti teinud nende osas muudatusi ja kõik peaks nüüd töötama hästi, kui NetworkManager on lubatud. Kui soovite keelata

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 muutmine, et kasutada CentOS 6 või CentOS 7 põhi-/kliendimudelit

Icinga2 on võimas seiresüsteem ja kui seda kasutatakse põhikliendi mudelis, võib see asendada vajaduse NRPE-põhiste seirekontrollide järele. Meister-klient

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Apache Cassandra 3.11.x installimine opsüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Apache Cassandra on tasuta ja avatud lähtekoodiga NoSQL-i andmebaasihaldussüsteem, mis on loodud pakkuma skaleeritavust, hig.

Kuidas installida Microweber operatsioonisüsteemi CentOS 7

Kuidas installida Microweber operatsioonisüsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Microweber on avatud lähtekoodiga pukseeritav CMS-i ja veebipood. Microweberi lähtekoodi majutatakse GitHubis. See juhend näitab teile

Mattermost 4.1 installimine CentOS 7-sse

Mattermost 4.1 installimine CentOS 7-sse

Kas kasutate teistsugust süsteemi? Mattermost on avatud lähtekoodiga isehostitav alternatiiv Slack SAAS-i sõnumsideteenusele. Teisisõnu, Mattermostiga saate ca

Minecrafti serverite võrgu loomine BungeeCordi abil opsüsteemides Debian 8, Debian 9 või CentOS 7

Minecrafti serverite võrgu loomine BungeeCordi abil opsüsteemides Debian 8, Debian 9 või CentOS 7

Mida vajate Vultr VPS-i, millel on vähemalt 1 GB muutmälu. SSH-juurdepääs (juur-/administraatoriõigustega). 1. samm: BungeeCordi installimine Kõigepealt

Võimaldab Pleskis krüptida

Võimaldab Pleskis krüptida

Pleski juhtpaneelil on Lets Encrypti jaoks väga kena integratsioon. Lets Encrypt on üks ainsatest SSL-i pakkujatest, kes väljastab sertifikaate täielikult

Võimaldab krüptida cPanelil

Võimaldab krüptida cPanelil

Lets Encrypt on sertifitseerimisasutus, mis on pühendunud SSL-sertifikaatide tasuta pakkumisele. cPanel on teie ja teie kliendi jaoks loonud korraliku integratsiooni

Kuidas installida Concrete5 süsteemi CentOS 7

Kuidas installida Concrete5 süsteemi CentOS 7

Kas kasutate teistsugust süsteemi? Concrete5 on avatud lähtekoodiga CMS, mis pakub palju eristatavaid ja kasulikke funktsioone, mis aitavad toimetajatel sisu hõlpsalt luua.

Kuidas installida CentOS 7 arvustuspaneeli

Kuidas installida CentOS 7 arvustuspaneeli

Kas kasutate teistsugust süsteemi? Review Board on tasuta avatud lähtekoodiga tööriist lähtekoodi, dokumentatsiooni, piltide ja palju muu ülevaatamiseks. See on veebipõhine tarkvara

Setup HTTP Authentication With Nginx on CentOS 7

Setup HTTP Authentication With Nginx on CentOS 7

In this guide, you will learn how to setup HTTP authentication for an Nginx web server running on CentOS 7. Requirements To get started, youll need th

Kuidas installida YOURLS süsteemi CentOS 7

Kuidas installida YOURLS süsteemi CentOS 7

YOURLS (Your Own URL Shortener) on avatud lähtekoodiga URL-i lühendamise ja andmeanalüüsi rakendus. Selles artiklis käsitleme installimisprotsessi

Kuidas installida ja konfigureerida ArangoDB CentOS 7-s

Kuidas installida ja konfigureerida ArangoDB CentOS 7-s

Kas kasutate teistsugust süsteemi? Sissejuhatus ArangoDB on avatud lähtekoodiga NoSQL-i andmebaas, millel on paindlik andmemudel dokumentide, graafikute ja võtmeväärtuste jaoks. see on

Etckeeperi kasutamine faili / etc versioonikontrolliks

Etckeeperi kasutamine faili / etc versioonikontrolliks

Sissejuhatus Kataloog /etc/ mängib Linuxi süsteemi toimimises kriitilist rolli. Selle põhjuseks on peaaegu iga süsteemi konfiguratsioon

Miks peaksite kasutama SSHFS-i? Kuidas ühendada CentOS 6-ga kaugfailisüsteem SSHFS-iga

Miks peaksite kasutama SSHFS-i? Kuidas ühendada CentOS 6-ga kaugfailisüsteem SSHFS-iga

Paljud süsteemiadministraatorid haldavad suuri servereid. Kui failidele on vaja juurde pääseda erinevatest serveritest, logige igasse eraldi sisse ca

Half Life 2 serveri seadistamine opsüsteemis CentOS 6

Half Life 2 serveri seadistamine opsüsteemis CentOS 6

See õpetus hõlmab Half Life 2 mänguserveri installimist süsteemi CentOS 6 System. 1. samm: eeltingimuste installimine Ou seadistamiseks

Kuidas installida Laravel GitScrum süsteemi CentOS 7

Kuidas installida Laravel GitScrum süsteemi CentOS 7

Laravel GitScrum ehk GitScrum on avatud lähtekoodiga produktiivsuse tööriist, mis on loodud selleks, et aidata arendusmeeskondadel rakendada Scrumi metoodikat sarnasel viisil.

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.

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.

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.

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