Hvernig á að setja upp Wiki.js á CentOS 7

Wiki.js er ókeypis og opinn uppspretta, nútímalegt wikiforrit byggt á Node.js, MongoDB, Git og Markdown. Wiki.js frumkóði er hýst opinberlega á Github . Þessi handbók mun sýna þér hvernig á að setja upp Wiki.js á nýju CentOS 7 Vultr tilviki með því að nota Node.js, MongoDB, PM2, Nginx, Git og Acme.sh.

Kröfur

Kröfur til að keyra Wiki.js eru eftirfarandi:

  • Node.js útgáfa 6.9.0 eða nýrri
  • MongoDB útgáfa 3.2 eða nýrri
  • Nginx
  • Git útgáfa 2.7.4 eða nýrri
  • Git-samhæft geymsla (opinber eða einkarekin) ( valfrjálst )
  • Lágmark 768MB vinnsluminni
  • Lén með A/ AAAAskrár sett upp

Athugaðu CentOS útgáfuna.

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

Búðu til nýjan non-rootnotandareikning með sudoaðgangi og skiptu yfir í hann.

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

ATH : Skiptu út johndoefyrir notendanafnið þitt .

Settu upp tímabeltið.

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

Gakktu úr skugga um að kerfið þitt sé uppfært.

sudo yum update -y

Settu upp nauðsynlega pakka til að klára þessa kennslu.

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

Slökktu á SELinux og eldvegg.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Virkjaðu EPEL geymsluna.

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

Settu upp Git

CentOS geymslur bjóða upp á mjög gamaldags útgáfu af Git, svo við þurfum að byggja Git frá uppruna.

Settu upp Git með því að byggja það úr frumkóðanum.

# 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

Staðfestu útgáfuna.

git --version
# git version 2.17.1

Settu upp Node.js

Wiki.js krefst Node.js 6.9.0 eða nýrri, svo við þurfum fyrst að setja upp Node.js.

Settu upp Node.js með því að nota NodeSource YUM geymsluna fyrir Node.js.

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

Athugaðu Node.js og NPM útgáfurnar.

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

Settu upp MongoDB

Wiki.js notar MongoDB sem gagnagrunnsvél. Við munum nota opinberu MongoDB geymslurnar , sem innihalda nýjustu helstu og minniháttar MongoDB útgáfurnar.

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

Athugaðu útgáfuna.

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

Virkjaðu og ræstu MongoDB.

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

Settu upp og stilltu Nginx

Það er mjög mælt með því að setja venjulegan vefþjón fyrir framan Wiki.js. Þetta tryggir að þú getur notað eiginleika eins og SSL, margar vefsíður, skyndiminni og fleira.

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

Athugaðu útgáfuna.

nginx -v
# nginx version: nginx/1.15.0

Virkjaðu og ræstu Nginx.

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

Stilltu Nginx sem HTTPeða HTTPSöfugt umboð fyrir Wiki.js.

Keyrðu sudo vim /etc/nginx/conf.d/wiki.js.confog fylltu það út með grunnstillingu um öfugri proxy hér að neðan.

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

}

Það eina sem þú þarft að breyta í ofangreindri uppsetningu er server_nametilskipun og hugsanlega proxy_passtilskipun ef þú ákveður að stilla aðra höfn en 3000. Wiki.js notar port 3000sjálfgefið.

Athugaðu stillinguna.

sudo nginx -t

Endurhlaða Nginx.

sudo systemctl reload nginx.service

Settu upp Acme.sh viðskiptavininn og fáðu Let's Encrypt vottorð (valfrjálst)

Securing your wiki with HTTPS is not necessary, but it is a good practice to secure your site traffic. In order to obtain an SSL certificate from Let's Encrypt, we will use Acme.sh client. Acme.sh is a pure UNIX shell script for obtaining SSL certificates from Let's Encrypt with zero dependencies. That makes it very lightweight in comparison to some other Acme protocol clients that require a lot of dependencies to run successfully.

Download and install 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 ~

Check the version.

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

Obtain RSA and ECDSA certificates for your domain/hostname.

# 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 

After running the above commands, your certificates and keys will be in the following directories:

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

NOTE: Don't forget to replace wiki.example.com with your domain name.

Eftir að hafa fengið vottorð frá Let's Encrypt þurfum við að stilla Nginx til að nýta þau.

Keyrðu sudo vim /etc/nginx/conf.d/wiki.js.confaftur og stilltu Nginx sem HTTPSöfugt umboð.

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

}

Athugaðu stillinguna.

sudo nginx -t

Endurhlaða Nginx.

sudo systemctl reload nginx.service

Settu upp Wiki.js

Búðu til tóma skjalrótarmöppu þar sem Wiki.js ætti að vera sett upp.

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

Farðu í rótarmöppuna skjalsins.

cd /var/www/wiki.example.com

Breyttu eignarhaldi /var/www/wiki.example.commöppunnar í notanda johndoe.

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

Í /var/www/wiki.example.commöppunni skaltu keyra eftirfarandi skipun til að hlaða niður og setja upp Wiki.js.

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

Þú getur keyrt eftirfarandi skipun til að skoða uppsetta útgáfu af Wiki.js.

node wiki --version
# 1.0.78

Þegar uppsetningunni er lokið verðurðu beðinn um að keyra uppsetningarhjálpina.

Ræstu uppsetningarhjálpina.

node wiki configure

Þetta mun láta þig vita um að fara á til http://localhost:3000að stilla Wiki.js. Ef þú ert með Nginx fyrir framan Wiki.js geturðu opnað lénið þitt (td http://wiki.example.com) í stað þess að fara á localhost.

Notaðu netvafrann þinn, farðu að http://wiki.example.comog fylgdu leiðbeiningunum á skjánum. Allar stillingar sem voru færðar inn í stillingarhjálpinni hafa verið vistaðar í config.ymlskránni. Stillingarhjálpin mun sjálfkrafa ræsa Wiki.js fyrir þig.

Uppsetning PM2

Sjálfgefið er að Wiki.js ræsist ekki sjálfkrafa eftir endurræsingu kerfisins. Til þess að láta það byrja við ræsingu þurfum við að setja upp PM2 vinnslustjórann.

Segðu PM2 að stilla sig sem ræsingarþjónustu.

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

Að lokum skaltu vista núverandi PM2 uppsetningu með því að keyra skipunina.

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

Wiki.js tilvikið þitt keyrir sem bakgrunnsferli og notar PM2 sem vinnslustjóra. Þú getur endurræst stýrikerfið þitt með sudo rebootog tryggt að Wiki.js ræsist eftir endurræsingu.


Settu upp Plesk á CentOS 7

Settu upp Plesk á CentOS 7

Að nota annað kerfi? Plesk er sérstakt stjórnborð fyrir vefþjón sem gerir notendum kleift að stjórna persónulegum og/eða viðskiptavinum vefsíðum sínum, gagnagrunnum

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Microweber á CentOS 7

Hvernig á að setja upp Microweber á CentOS 7

Að nota annað kerfi? Microweber er opinn uppspretta draga og sleppa CMS og netverslun. Microweber frumkóði er hýst á GitHub. Þessi handbók mun sýna þér

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Að nota annað kerfi? Mattermost er opinn uppspretta, sjálfhýst valkostur við Slack SAAS skilaboðaþjónustuna. Með öðrum orðum, með Mattermost, þú ca

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Það sem þú þarft Vultr VPS með að minnsta kosti 1GB af vinnsluminni. SSH aðgangur (með rót / stjórnunarréttindi). Skref 1: Uppsetning BungeeCord Fyrst af öllu

Láttu dulkóða á Plesk

Láttu dulkóða á Plesk

Plesk stjórnborðið er með mjög fallegri samþættingu fyrir Lets Encrypt. Lets Encrypt er ein af einu SSL veitunum sem gefa út skírteini að fullu

Láttu dulkóða á cPanel

Láttu dulkóða á cPanel

Lets Encrypt er vottunaryfirvöld sem sérhæfir sig í að útvega SSL vottorð án endurgjalds. cPanel hefur byggt upp snyrtilega samþættingu svo þú og viðskiptavinurinn þinn

Hvernig á að setja upp Concrete5 á CentOS 7

Hvernig á að setja upp Concrete5 á CentOS 7

Að nota annað kerfi? Concrete5 er opinn uppspretta CMS sem býður upp á marga áberandi og gagnlega eiginleika til að aðstoða ritstjóra við að framleiða efni auðveldlega og

Hvernig á að setja upp Review Board á CentOS 7

Hvernig á að setja upp Review Board á CentOS 7

Að nota annað kerfi? Review Board er ókeypis og opinn hugbúnaður til að skoða frumkóða, skjöl, myndir og margt fleira. Það er vefbundið hugbúnaðarstríð

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Í þessari handbók munt þú læra hvernig á að setja upp HTTP auðkenningu fyrir Nginx vefþjón sem keyrir á CentOS 7. Kröfur Til að byrja þarftu að

Hvernig á að setja upp YOURLS á CentOS 7

Hvernig á að setja upp YOURLS á CentOS 7

YOURLS (Your Own URL Shortener) er opinn uppspretta vefslóða styttingar og gagnagreiningarforrit. Í þessari grein munum við fjalla um ferlið við uppsetningu

How to Install and Configure ArangoDB on CentOS 7

How to Install and Configure ArangoDB on CentOS 7

Using a Different System? Introduction ArangoDB is an open source NoSQL database with a flexible data model for documents, graphs, and key-values. It is

Notkun Etckeeper fyrir útgáfustýringu á /etc

Notkun Etckeeper fyrir útgáfustýringu á /etc

Inngangur /etc/ skrárinn gegnir mikilvægu hlutverki í því hvernig Linux kerfi virkar. Ástæðan fyrir þessu er sú að næstum allar kerfisstillingar

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Margir kerfisstjórar stjórna miklu magni af netþjónum. Þegar aðgangur þarf að skrám á mismunandi netþjónum er innskráning á hvern og einn fyrir sig ca

Setja upp Half Life 2 Server á CentOS 6

Setja upp Half Life 2 Server á CentOS 6

Þessi kennsla mun fjalla um ferlið við að setja upp Half Life 2 leikjaþjón á CentOS 6 System. Skref 1: Forsendur settar upp Til að setja upp ou

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Laravel GitScrum, eða GitScrum er opinn uppspretta framleiðniverkfæri hannað til að hjálpa þróunarteymi að innleiða Scrum aðferðafræðina á svipaðan hátt

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira