Wiki.js:n asentaminen Ubuntuun 18.04

Wiki.js on ilmainen ja avoimen lähdekoodin moderni wikisovellus, joka perustuu Node.js:iin , Gitiin ja Markdowniin . Wiki.js-lähdekoodia isännöidään julkisesti Githubissa . Tämä opas näyttää, kuinka Wiki.js asennetaan uuteen Ubuntu 18.04 LTS Vultr -esiintymään Node.js:n, MongoDB:n, PM2:n, Nginxin, Gitin ja Acme.sh:n avulla.

Vaatimukset

Vaatimukset Wiki.js:n suorittamiseen ja tämän oppaan loppuun saattamiseksi ovat seuraavat:

  • Node.js-versio 6.9.0 tai uudempi
  • MongoDB versio 3.2 tai uudempi
  • Nginx
  • Git versio 2.7.4 tai uudempi
  • Vähintään 768 Mt RAM-muistia
  • Verkkotunnuksen nimi A/ AAAAtietueet määritetty

Tarkista Ubuntu-versio.

lsb_release -ds
# Ubuntu 18.04.4 LTS

Luo uusi non-rootkäyttäjätili sudoja vaihda siihen.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

HUOMAA : Korvaa johndoekäyttäjätunnuksellasi.

Aseta aikavyöhyke.

sudo dpkg-reconfigure tzdata

Varmista, että järjestelmäsi on ajan tasalla.

sudo apt update && sudo apt upgrade -y

Asenna tarvittavat paketit.

sudo apt install -y build-essential apt-transport-https

Asenna Git

Git 2.7.4 tulee esiasennettuna Ubuntu-palvelinversioon, joten meidän ei tarvitse asentaa sitä. Jos haluat asentaa uudemman version, voit käyttää kolmannen osapuolen PPA-sopimuksia tai kääntää uusimman Gitin julkaisun lähteestä.

Voit tarkistaa tällä hetkellä asennetun Gitin version suorittamalla:

git --version
# git version 2.7.4

Jos haluat asentaa uudemman version Git-ohjelmistosta, voit käyttää seuraavaa.

# Remove existing git package
sudo apt remove -y git
sudo apt-get install software-properties-common
sudo add-apt-repository -y ppa:git-core/ppa
sudo apt update && sudo apt upgrade -y
sudo apt install -y git

Tarkista Git-versio.

git --version
# git version 2.17.0

Asenna Node.js

Asenna Node.js käyttämällä Node.js:n NodeSource APT -varastoa.

curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt install -y nodejs

Tarkista Node.js- ja NPM-versiot.

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

Asenna MongoDB

Käytämme virallisia MongoDB-tietovarastoja , jotka pidetään ajan tasalla uusimpien suurien ja pienempien MongoDB-julkaisujen kanssa.

Asenna MongoDB Community Edition.

sudo apt install -y mongodb

Tarkista versio.

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

Asenna ja määritä Nginx

Asenna Nginx.

wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx

Tarkista versio.

sudo nginx -v
# nginx version: nginx/1.15.0

Ota käyttöön ja käynnistä Nginx.

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

Määritä Nginx käänteiseksi välityspalvelimeksi Wiki.js-sovellukselle.

Suorita sudo vim /etc/nginx/conf.d/wiki.js.confja täytä se alla olevilla käänteisen välityspalvelimen perusmäärityksellä.

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

}

Ainoa asia, jota sinun on muutettava yllä olevassa konfiguraatiossa, on server_namedirektiivi ja mahdollisesti proxy_passdirektiivi, jos päätät määrittää minkä tahansa muun portin paitsi 3000. Wiki.js käyttää porttia 3000oletuksena.

Tarkista kokoonpano.

sudo nginx -t

Lataa Nginx uudelleen.

sudo systemctl reload nginx.service

Asenna Acme.sh-asiakas ja hanki Let's Encrypt -sertifikaatti (valinnainen)

Wikin suojaaminen HTTPSei ole välttämätöntä, mutta se turvaa sivustosi liikenteen. Acme.sh on puhdas unix-kuoriohjelmisto SSL-sertifikaattien hankkimiseen Let's Encryptistä ilman riippuvuutta.

Lataa ja asenna 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 ~

Tarkista versio.

/etc/letsencrypt/acme.sh --version

Hanki RSA- ja ECDSA-sertifikaatit wiki.example.comverkkotunnukselle/isäntänimelle.

# 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 

Yllä olevien komentojen suorittamisen jälkeen varmenteesi ja avaimesi ovat:

  • RSA: /etc/letsencrypt/wiki.example.comhakemisto.
  • ECC/ECDSA: /etc/letsencrypt/wiki.example.com_ecchakemisto.

Kun olemme saaneet sertifikaatit Let's Encryptiltä, ​​meidän on määritettävä Nginx käyttämään niitä.

Suorita sudo vim /etc/nginx/conf.d/wiki.js.confuudelleen ja määritä Nginx HTTPSkäänteiseksi välityspalvelimeksi.

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

}

Tarkista kokoonpano.

sudo nginx -t

Lataa Nginx uudelleen.

sudo systemctl reload nginx.service

Asenna Wiki.js

Luo tyhjä asiakirjan juurikansio, johon Wiki.js tulee asentaa.

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

Siirry asiakirjan juurikansioon.

cd /var/www/wiki.example.com

Vaihda /var/www/wiki.example.comkansion omistajuus käyttäjälle johndoe.

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

Vuodesta /var/www/wiki.example.comkansioon, suorita seuraava komento lataa ja asentaa Wiki.js.

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

Voit tarkastella Wiki.js:n tällä hetkellä asennettua versiota suorittamalla seuraavan komennon.

node wiki --version
# 1.0.78

Kun asennus on valmis, sinua kehotetaan suorittamaan ohjattu määritystoiminto.

Käynnistä ohjattu määritystoiminto.

node wiki configure

Tämä kehottaa sinua selaamaan http://localhost:3000Wiki.js:n määrittämistä varten. Jos sinulla on Nginx Wiki.js:n edessä, voit avata verkkotunnuksesi (esim. http://wiki.example.com) osoitteen sijaan localhost.

Siirry verkkoselaimella kohtaan http://wiki.example.comja seuraa näytön ohjeita. Kaikki ohjatun konfigurointitoiminnon aikana tehdyt asetukset tallennetaan config.ymltiedostoon. Ohjattu määritystoiminto käynnistää automaattisesti Wiki.js:n puolestasi.

Asenna PM2

Oletusarvoisesti Wiki.js ei käynnisty automaattisesti järjestelmän uudelleenkäynnistyksen jälkeen. Jotta se käynnistyisi käynnistyksen yhteydessä, meidän on asennettava PM2. PM2 toimitetaan Wiki.js:n mukana paikallisena NPM-moduulina, joten meidän ei tarvitse asentaa PM2:ta maailmanlaajuisesti.

Pyydä PM2:ta määrittämään itsensä käynnistyspalveluksi.

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

Tallenna lopuksi nykyinen PM2-kokoonpano.

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

Wiki.js toimii taustaprosessina ja käyttää PM2:ta prosessinhallinnanaan.


Asenna Plesk CentOS 7:ään

Asenna Plesk CentOS 7:ään

Käytätkö erilaista järjestelmää? Plesk on patentoitu verkkoisäntäohjauspaneeli, jonka avulla käyttäjät voivat hallita henkilökohtaisia ​​ja/tai asiakkaidensa verkkosivustoja, tietokantoja

Asenna Cacti Debian Jessielle

Asenna Cacti Debian Jessielle

Johdanto Cacti on avoimen lähdekoodin seuranta- ja grafiikkatyökalu, joka perustuu täysin RRD-tietoihin. Cactin kautta voit seurata lähes minkä tahansa tyyppisiä laitteita

Asenna Lets Encrypt SSL One-Click WordPress -sovellukseen

Asenna Lets Encrypt SSL One-Click WordPress -sovellukseen

Johdanto Lets Encrypt on varmenteen myöntäjäpalvelu, joka tarjoaa ilmaisia ​​TLS/SSL-varmenteita. Certbot yksinkertaistaa asennusprosessia,

Tekkit Classic -palvelimen määrittäminen Ubuntu 16.10:ssä

Tekkit Classic -palvelimen määrittäminen Ubuntu 16.10:ssä

Käytätkö erilaista järjestelmää? Mikä on Tekkit Classic? Tekkit Classic on modack peliin, jonka kaikki tuntevat ja rakastavat; Minecraft. Se sisältää joitain ver

Asenna iRedMail Debian Wheezylle

Asenna iRedMail Debian Wheezylle

Käytätkö erilaista järjestelmää? Tämä opetusohjelma näyttää kuinka asennat ryhmätyöohjelman iRedMail uuteen Debian Wheezy -asennukseen. Sinun pitäisi käyttää tarjoilua

Jekyll-blogin luominen Ubuntuun 16.04

Jekyll-blogin luominen Ubuntuun 16.04

Käytätkö erilaista järjestelmää? Jekyll on loistava vaihtoehto WordPressille bloggaamiseen tai sisällön jakamiseen. Se ei vaadi tietokantoja ja se on erittäin helppoa i

Valvomattomien päivitysten asentaminen Debian 9:ssä (Stretch)

Valvomattomien päivitysten asentaminen Debian 9:ssä (Stretch)

Käytätkö erilaista järjestelmää? Jos ostat Debian-palvelimen, sinulla pitäisi aina olla viimeisimmät tietoturvakorjaukset ja -päivitykset riippumatta siitä, oletko nukkumassa vai ei.

PHP 7.0:n tai PHP 7.1:n asentaminen ja määrittäminen Ubuntu 16.04:ssä

PHP 7.0:n tai PHP 7.1:n asentaminen ja määrittäminen Ubuntu 16.04:ssä

PHP ja siihen liittyvät paketit ovat yleisimmin käytettyjä komponentteja verkkopalvelimen käyttöönotossa. Tässä artikkelissa opimme asentamaan PHP 7.0 tai PHP 7.1 o

Kuinka asentaa Squid Proxy CentOS:ään

Kuinka asentaa Squid Proxy CentOS:ään

Squid on suosittu, ilmainen Linux-ohjelma, jonka avulla voit luoda edelleenlähetysverkkovälityspalvelimen. Tässä oppaassa näet, kuinka Squid asennetaan CentOS:ään kääntääksesi sinut

Lighttpd:n (LLMP Stack) asentaminen CentOS 6:een

Lighttpd:n (LLMP Stack) asentaminen CentOS 6:een

Johdanto Lighttpd on Apachen haarukka, jonka tarkoituksena on olla paljon vähemmän resurssiintensiivinen. Se on kevyt, tästä syystä sen nimi, ja on melko yksinkertainen käyttää. Asenna

Kolme ilmaista palvelinohjauspaneelia (pikaasennus)

Kolme ilmaista palvelinohjauspaneelia (pikaasennus)

1. Virtualmin/Webmin Virtualmin on tehokas ja joustava web-hosting-ohjauspaneeli Linux- ja UNIX-järjestelmille, joka perustuu tunnettuun avoimen lähdekoodin verkkotietokantaan

Yii-sovelluksen määrittäminen Ubuntuun 14.04

Yii-sovelluksen määrittäminen Ubuntuun 14.04

Yii on PHP-kehys, jonka avulla voit kehittää sovelluksia nopeammin ja helpommin. Yiin asentaminen Ubuntuun on yksinkertaista, kuten opit tarkalleen

Näytön käyttö Ubuntu 14.04:ssä

Näytön käyttö Ubuntu 14.04:ssä

Screen on sovellus, joka mahdollistaa usean pääteistuntojen käytön yhdessä ikkunassa. Tämän avulla voit simuloida useita pääteikkunoita, joissa se ma

Asenna oma DNS-palvelin Debianissa/Ubuntussa

Asenna oma DNS-palvelin Debianissa/Ubuntussa

Tämä opetusohjelma selittää, kuinka DNS-palvelin määritetään Bind9:n avulla Debianissa tai Ubuntussa. Korvaa koko artikkelin ajan verkkotunnuksesi-nimi.com vastaavasti. klo th

Logrotaten käyttäminen lokitiedostojen hallintaan

Logrotaten käyttäminen lokitiedostojen hallintaan

Johdanto Logrotate on Linux-apuohjelma, joka yksinkertaistaa lokitiedostojen hallintaa. Se toimii yleensä kerran päivässä cron-työn kautta ja hallitsee lokipohjaa

Staattisen verkon ja IPv6:n määrittäminen CentOS 7:ssä

Staattisen verkon ja IPv6:n määrittäminen CentOS 7:ssä

VULTR on äskettäin tehnyt muutoksia heidän omiinsa, ja kaiken pitäisi nyt toimia hyvin heti, kun NetworkManager on käytössä. Jos haluat poistaa käytöstä

Icinga2:n muokkaaminen käyttämään pää/asiakasmallia CentOS 6:ssa tai CentOS 7:ssä

Icinga2:n muokkaaminen käyttämään pää/asiakasmallia CentOS 6:ssa tai CentOS 7:ssä

Icinga2 on tehokas valvontajärjestelmä, ja master-client-mallissa käytettynä se voi korvata NRPE-pohjaisten valvontatarkastusten tarpeen. Pääasiakas

Asenna Red5 Media Server Ubuntu 16.04:ään

Asenna Red5 Media Server Ubuntu 16.04:ään

Käytätkö erilaista järjestelmää? Red5 on Java-kielellä toteutettu avoimen lähdekoodin mediapalvelin, jonka avulla voit ajaa Flash-monikäyttäjäsovelluksia, kuten suoratoistoa.

Käännä ja asenna Nginx PageSpeed-moduulilla Debian 8:ssa

Käännä ja asenna Nginx PageSpeed-moduulilla Debian 8:ssa

Tässä artikkelissa näemme, kuinka Nginx-päälinja voidaan kääntää ja asentaa virallisista Nginx-lähteistä PageSpeed-moduulilla, jonka avulla voit

Apache Cassandra 3.11.x:n asentaminen Ubuntu 16.04 LTS:ään

Apache Cassandra 3.11.x:n asentaminen Ubuntu 16.04 LTS:ään

Käytätkö erilaista järjestelmää? Apache Cassandra on ilmainen ja avoimen lähdekoodin NoSQL-tietokannan hallintajärjestelmä, joka on suunniteltu tarjoamaan skaalautuvuutta, hig.

Koneiden nousu: tekoälyn todelliset sovellukset

Koneiden nousu: tekoälyn todelliset sovellukset

Tekoäly ei ole tulevaisuudessa, se tässä nykyisyydessä Tässä blogissa Lue kuinka tekoälysovellukset ovat vaikuttaneet eri sektoreihin.

DDOS-hyökkäykset: lyhyt katsaus

DDOS-hyökkäykset: lyhyt katsaus

Oletko myös DDOS-hyökkäysten uhri ja hämmentynyt ehkäisymenetelmistä? Lue tämä artikkeli ratkaistaksesi kysymyksesi.

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Oletko koskaan miettinyt, kuinka hakkerit ansaitsevat rahaa?

Olet ehkä kuullut, että hakkerit ansaitsevat paljon rahaa, mutta oletko koskaan miettinyt, kuinka he ansaitsevat tuollaista rahaa? keskustellaan.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Googlen vallankumouksellisia keksintöjä, jotka helpottavat elämääsi.

Haluatko nähdä Googlen vallankumouksellisia keksintöjä ja kuinka nämä keksinnöt muuttivat jokaisen ihmisen elämää nykyään? Lue sitten blogia nähdäksesi Googlen keksinnöt.

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Essential perjantai: Mitä tekoäly-ohjatuille autoille tapahtui?

Konsepti itseohjautuvista autoista lähteä tielle tekoälyn avulla on ollut haaveena jo jonkin aikaa. Mutta useista lupauksista huolimatta niitä ei näy missään. Lue tämä blogi saadaksesi lisätietoja…

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Teknologinen singulaarisuus: ihmissivilisaation kaukainen tulevaisuus?

Kun tiede kehittyy nopeasti ja ottaa haltuunsa suuren osan ponnisteluistamme, myös riskit altistaa itsemme selittämättömälle singulariteetille kasvavat. Lue, mitä singulaarisuus voisi tarkoittaa meille.

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen tallennuksen evoluutio – Infografiikka

Tietojen säilytystavat ovat kehittyneet mahdollisesti Datan syntymästä lähtien. Tämä blogi käsittelee tiedon tallennuksen kehitystä infografian pohjalta.

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Big Datan referenssiarkkitehtuurikerrosten toiminnot

Blogista saat tietää Big Data -arkkitehtuurin eri kerroksista ja niiden toiminnoista yksinkertaisimmalla tavalla.

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

6 uskomatonta etua älykkäiden kotilaitteiden käyttämisestä elämässämme

Tässä digitaalisessa maailmassa kodin älylaitteista on tullut tärkeä osa elämää. Tässä on muutamia älykkäiden kodin laitteiden hämmästyttäviä etuja, joiden avulla ne tekevät elämästämme elämisen arvoista ja yksinkertaisempaa.

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

macOS Catalina 10.15.4 -täydennyspäivitys aiheuttaa enemmän ongelmia kuin ratkaiseminen

Apple julkaisi äskettäin macOS Catalina 10.15.4 -lisäpäivityksen ongelmien korjaamiseksi, mutta näyttää siltä, ​​että päivitys aiheuttaa lisää ongelmia, jotka johtavat mac-koneiden tiilikaamiseen. Lue tämä artikkeli saadaksesi lisätietoja