Kā instalēt Wiki.js operētājsistēmā CentOS 7

Wiki.js ir bezmaksas atvērtā pirmkoda moderna wiki lietojumprogramma, kas veidota uz Node.js, MongoDB, Git un Markdown. Wiki.js pirmkods ir publiski mitināts vietnē Github . Šajā rokasgrāmatā tiks parādīts, kā instalēt Wiki.js jaunā CentOS 7 Vultr instancē, izmantojot Node.js, MongoDB, PM2, Nginx, Git un Acme.sh.

Prasības

Lai palaistu Wiki.js, ir šādas prasības:

  • Node.js versija 6.9.0 vai jaunāka
  • MongoDB versija 3.2 vai jaunāka
  • Nginx
  • Git versija 2.7.4 vai jaunāka
  • Ar Git saderīga repozitorijs (publisks vai privāts) ( pēc izvēles )
  • Vismaz 768 MB RAM
  • Iestatīts domēna nosaukums ar A/ AAAAierakstiem

Pārbaudiet CentOS versiju.

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

Izveidojiet jaunu non-rootlietotāja kontu ar sudopiekļuvi un pārslēdzieties uz to.

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

PIEZĪME . Aizstāt johndoear savu lietotājvārdu .

Iestatiet laika joslu.

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

Pārliecinieties, vai jūsu sistēma ir atjaunināta.

sudo yum update -y

Instalējiet nepieciešamās pakotnes, lai pabeigtu šo apmācību.

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

Atspējojiet SELinux un ugunsmūri.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

Iespējot EPEL repozitoriju.

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

Instalējiet Git

CentOS krātuves nodrošina ļoti novecojušu Git versiju, tāpēc mums būs jāveido Git no avota.

Instalējiet Git, izveidojot to no pirmkoda.

# 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

Pārbaudiet versiju.

git --version
# git version 2.17.1

Instalējiet Node.js

Wiki.js ir nepieciešama Node.js 6.9.0 vai jaunāka versija, tāpēc mums vispirms būs jāinstalē Node.js.

Instalējiet Node.js, izmantojot Node.js paredzēto NodeSource YUM repozitoriju.

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

Pārbaudiet Node.js un NPM versijas.

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

Instalējiet MongoDB

Wiki.js izmanto MongoDB kā datu bāzes dzinēju. Mēs izmantosim oficiālās MongoDB krātuves , kurās ir jaunākie lielākie un mazākie MongoDB laidieni.

Instalējiet 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

Pārbaudiet versiju.

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

Iespējojiet un palaidiet MongoDB.

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

Instalējiet un konfigurējiet Nginx

Ir ļoti ieteicams Wiki.js priekšā ievietot standarta tīmekļa serveri. Tas nodrošina, ka varat izmantot tādas funkcijas kā SSL, vairākas vietnes, kešatmiņu un citas.

Instalējiet 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

Pārbaudiet versiju.

nginx -v
# nginx version: nginx/1.15.0

Iespējojiet un palaidiet Nginx.

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

Konfigurējiet Nginx kā Wiki.js starpniekserveri HTTPvai HTTPSapgriezto starpniekserveri.

Palaidiet sudo vim /etc/nginx/conf.d/wiki.js.confun aizpildiet to, izmantojot tālāk norādīto reversā starpniekservera pamata konfigurāciju.

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

}

Vienīgais, kas jāmaina iepriekš minētajā konfigurācijā, ir server_namedirektīva un, iespējams, proxy_passdirektīva, ja nolemjat konfigurēt jebkuru citu portu, nevis 3000. Wiki.js 3000pēc noklusējuma izmanto portu .

Pārbaudiet konfigurāciju.

sudo nginx -t

Pārlādēt Nginx.

sudo systemctl reload nginx.service

Instalējiet Acme.sh klientu un iegūstiet Let's Encrypt sertifikātu (pēc izvēles)

Wiki aizsardzība HTTPSnav nepieciešama, taču tā ir laba prakse, lai nodrošinātu vietnes trafiku. Lai no Let's Encrypt iegūtu SSL sertifikātu, mēs izmantosim Acme.sh klientu. Acme.sh ir tīrs UNIX apvalka skripts SSL sertifikātu iegūšanai no Let's Encrypt bez atkarības. Tas padara to ļoti vieglu salīdzinājumā ar dažiem citiem Acme protokola klientiem, kuru veiksmīgai darbībai ir nepieciešams daudz atkarību.

Lejupielādēt un instalēt 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 ~

Pārbaudiet versiju.

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

Iegūstiet RSA un ECDSA sertifikātus savam domēnam/resursdatora nosaukumam.

# 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ēc iepriekš minēto komandu palaišanas jūsu sertifikāti un atslēgas atradīsies šādos direktorijos:

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

PIEZĪME : neaizmirstiet aizstāt wiki.example.comar savu domēna nosaukumu.

Pēc sertifikātu iegūšanas no Let's Encrypt mums ir jākonfigurē Nginx, lai tos izmantotu.

Palaidiet sudo vim /etc/nginx/conf.d/wiki.js.confvēlreiz un konfigurējiet Nginx kā HTTPSapgriezto starpniekserveri.

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

}

Pārbaudiet konfigurāciju.

sudo nginx -t

Pārlādēt Nginx.

sudo systemctl reload nginx.service

Instalējiet Wiki.js

Izveidojiet tukšu dokumenta saknes mapi, kurā jāinstalē Wiki.js.

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

Pārejiet uz dokumenta saknes mapi.

cd /var/www/wiki.example.com

Mainiet /var/www/wiki.example.commapes īpašumtiesības uz lietotāju johndoe.

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

No /var/www/wiki.example.commapes palaidiet šo komandu, lai lejupielādētu un instalētu Wiki.js.

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

Varat palaist šo komandu, lai skatītu pašlaik instalēto Wiki.js versiju.

node wiki --version
# 1.0.78

Kad instalēšana ir pabeigta, jums tiks piedāvāts palaist konfigurācijas vedni.

Sāciet konfigurācijas vedni.

node wiki configure

Tas jums paziņos, lai pārietu uz http://localhost:3000vietni, lai konfigurētu Wiki.js. Ja jums ir Nginx pirms Wiki.js, varat atvērt savu domēna nosaukumu (piemēram, http://wiki.example.com), nevis doties uz localhost.

Izmantojot tīmekļa pārlūkprogrammu, dodieties uz http://wiki.example.comun izpildiet ekrānā redzamos norādījumus. Visi iestatījumi, kas tika ievadīti konfigurācijas vedņa laikā, ir saglabāti config.ymlfailā. Konfigurācijas vednis automātiski startēs Wiki.js jūsu vietā.

Iestatīt PM2

Pēc noklusējuma Wiki.js nesāksies automātiski pēc sistēmas atsāknēšanas. Lai to sāktu sāknēšanas laikā, mums ir jāiestata PM2 procesa pārvaldnieks.

Pastāstiet PM2 konfigurēt sevi kā startēšanas pakalpojumu.

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

Visbeidzot, saglabājiet pašreizējo PM2 konfigurāciju, izpildot komandu.

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

Jūsu Wiki.js instance darbojas kā fona process, izmantojot PM2 kā procesa pārvaldnieku. Varat atsāknēt savu OS, izmantojot sudo rebootun nodrošināt, lai Wiki.js tiktu palaists pēc pārstartēšanas.


Instalējiet Plesk operētājsistēmā CentOS 7

Instalējiet Plesk operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes

Kā instalēt Squid starpniekserveri CentOS

Kā instalēt Squid starpniekserveri CentOS

Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

Statiskā tīkla un IPv6 konfigurēšana operētājsistēmā CentOS 7

VULTR nesen veica izmaiņas, un tagad visam vajadzētu darboties labi, ja ir iespējots NetworkManager. Ja vēlaties atspējot

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Kā instalēt Microweber operētājsistēmā CentOS 7

Kā instalēt Microweber operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Microweber ir atvērtā koda vilkšanas un nomešanas CMS un tiešsaistes veikals. Microweber pirmkods tiek mitināts vietnē GitHub. Šī rokasgrāmata jums parādīs

Kā instalēt Mattermost 4.1 operētājsistēmā CentOS 7

Kā instalēt Mattermost 4.1 operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Mattermost ir atvērtā pirmkoda, pašmitināta alternatīva Slack SAAS ziņojumapmaiņas pakalpojumam. Citiem vārdiem sakot, izmantojot Mattermost, jūs apm

Minecraft serveru tīkla izveide ar BungeeCord operētājsistēmā Debian 8, Debian 9 vai CentOS 7

Minecraft serveru tīkla izveide ar BungeeCord operētājsistēmā Debian 8, Debian 9 vai CentOS 7

Kas jums būs nepieciešams Vultr VPS ar vismaz 1 GB RAM. SSH piekļuve (ar root/administratora tiesībām). 1. darbība: BungeeCord instalēšana Vispirms vispirms

Ļauj šifrēt vietnē Plesk

Ļauj šifrēt vietnē Plesk

Plesk vadības panelī ir ļoti jauka Lets Encrypt integrācija. Lets Encrypt ir viens no vienīgajiem SSL nodrošinātājiem, kas pilnībā izsniedz sertifikātus

Ļauj šifrēt cPanel

Ļauj šifrēt cPanel

Lets Encrypt ir sertifikātu iestāde, kas nodrošina SSL sertifikātus bez maksas. cPanel ir izveidojis glītu integrāciju, lai jūs un jūsu klients

Kā instalēt Concrete5 operētājsistēmā CentOS 7

Kā instalēt Concrete5 operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Concrete5 ir atvērtā pirmkoda CMS, kas piedāvā daudzas atšķirīgas un noderīgas funkcijas, lai palīdzētu redaktoriem viegli izveidot saturu.

Kā instalēt pārskata paneli sistēmā CentOS 7

Kā instalēt pārskata paneli sistēmā CentOS 7

Vai izmantojat citu sistēmu? Pārskatīšanas padome ir bezmaksas atvērtā pirmkoda rīks pirmkoda, dokumentācijas, attēlu un daudz ko citu pārskatīšanai. Tā ir tīmekļa programmatūra

Iestatiet HTTP autentifikāciju, izmantojot Nginx operētājsistēmā CentOS 7

Iestatiet HTTP autentifikāciju, izmantojot Nginx operētājsistēmā CentOS 7

Šajā rokasgrāmatā jūs uzzināsit, kā iestatīt HTTP autentifikāciju Nginx tīmekļa serverim, kas darbojas operētājsistēmā CentOS 7. Prasības Lai sāktu darbu, jums būs nepieciešams

Kā instalēt YOURLS operētājsistēmā CentOS 7

Kā instalēt YOURLS operētājsistēmā CentOS 7

YOURLS (Your Own URL Shortener) ir atvērtā koda URL saīsināšanas un datu analīzes lietojumprogramma. Šajā rakstā mēs apskatīsim instalēšanas procesu

Kā instalēt un konfigurēt ArangoDB operētājsistēmā CentOS 7

Kā instalēt un konfigurēt ArangoDB operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Ievads ArangoDB ir atvērtā koda NoSQL datu bāze ar elastīgu datu modeli dokumentiem, grafikiem un atslēgu vērtībām. Tas ir

Etckeeper izmantošana /etc versiju kontrolei

Etckeeper izmantošana /etc versiju kontrolei

Ievads /etc/ direktorijam ir izšķiroša nozīme Linux sistēmas darbībā. Iemesls tam ir gandrīz visas sistēmas konfigurācijas

Kāpēc jums vajadzētu izmantot SSHFS? Kā uzstādīt attālo failu sistēmu ar SSHFS operētājsistēmā CentOS 6

Kāpēc jums vajadzētu izmantot SSHFS? Kā uzstādīt attālo failu sistēmu ar SSHFS operētājsistēmā CentOS 6

Daudzi sistēmu administratori pārvalda lielu daudzumu serveru. Ja failiem ir jāpiekļūst dažādos serveros, piesakieties katrā atsevišķi apm

Half Life 2 servera iestatīšana operētājsistēmā CentOS 6

Half Life 2 servera iestatīšana operētājsistēmā CentOS 6

Šajā apmācībā tiks apskatīts Half Life 2 spēļu servera instalēšanas process sistēmā CentOS 6. 1. darbība: priekšnosacījumu instalēšana Lai iestatītu ou

Kā instalēt Laravel GitScrum operētājsistēmā CentOS 7

Kā instalēt Laravel GitScrum operētājsistēmā CentOS 7

Laravel GitScrum jeb GitScrum ir atvērtā pirmkoda produktivitātes rīks, kas izstrādāts, lai palīdzētu izstrādātāju komandām ieviest Scrum metodoloģiju līdzīgā veidā.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk