Kuinka asentaa Wiki.js FreeBSD 11:een

Wiki.js on ilmainen ja avoimen lähdekoodin moderni wikisovellus, joka on rakennettu Node.js:lle, MongoDB:lle, Gitille ja Markdownille. Wiki.js-lähdekoodia isännöidään julkisesti Githubissa . Tämä opas näyttää, kuinka Wiki.js asennetaan uuteen FreeBSD 11 Vultr -esiintymään käyttämällä Node.js:ää, MongoDB:tä, PM2:ta, Nginxiä, Gitiä ja Acme.sh:ta.

Vaatimukset

Wiki.js:n suorittamisen vaatimukset ovat seuraavat:

  • Node.js-versio 6.11.1 tai uudempi
  • MongoDB versio 3.2 tai uudempi
  • Git versio 2.7.4 tai uudempi
  • Verkkopalvelin, kuten Nginx, Apache, IIS, Caddy tai H2O. Tämä opas käyttää Nginxiä.
  • Git-yhteensopiva arkisto (julkinen tai yksityinen) Tämä on valinnainen
  • Vähintään 512 Mt RAM-muistia. On erittäin suositeltavaa käyttää konetta, jossa on vähintään 1 Gt RAM-muistia.
  • Verkkotunnuksen nimi A/ AAAAtietueet määritetty. Tässä oppaassa käytämme wiki.example.comesimerkkiverkkotunnusta.

Ennen kuin aloitat

Tarkista FreeBSD-versio.

uname -ro
# FreeBSD 11.2-RELEASE

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

freebsd-update fetch install
pkg update && pkg upgrade -y

Asentaa sudo, vim, unzip, wget, git, bashja socatpakkaukset, jos ne eivät ole läsnä järjestelmässä.

pkg install -y sudo vim unzip wget git bash socat

Luo uusi käyttäjätili haluamallasi käyttäjätunnuksella (käytämme johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Suorita visudokomento ja poista %wheel ALL=(ALL) ALLrivin kommentti , jotta ryhmän jäsenet wheelvoivat suorittaa minkä tahansa komennon.

# Uncomment by removing the hash (#) sign
%wheel ALL=(ALL) ALL

Vaihda nyt äskettäin luotuun käyttäjään.

su - johndoe

HUOMAA: Korvaa johndoekäyttäjätunnuksellasi.

Aseta aikavyöhyke.

sudo tzsetup

Asenna Node.js

Wiki.js vaatii Node.js:n 6.11.1:n tai uudemman, joten meidän on ensin asennettava asianmukainen Node.js-versio.

Asenna Node.js ja NPM.

sudo pkg install -y node8 npm-node8

Tarkista versiot.

node -v && npm -v
# v8.12.0
# 6.4.1

Asenna MongoDB

Wiki.js käyttää MongoDB:tä tietokantamoottorina.

Asenna MongoDB.

sudo pkg install -y mongodb36

Tarkista versio.

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

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

sudo sysrc mongod_enable=yes
sudo service mongod start

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

Wikin suojaaminen HTTPS:llä ei ole välttämätöntä, mutta se on hyvä käytäntö suojata sivustosi liikenne. SSL-sertifikaatin hankkimiseksi Let's Encryptiltä käytämme Acme.sh-asiakasta. Acme.sh on puhdas unix-kuoriohjelmisto SSL-sertifikaattien hankkimiseen Let's Encryptistä ilman riippuvuutta. Tämä tekee siitä erittäin kevyen verrattuna joihinkin muihin Acme-protokollaasiakkaisiin, jotka vaativat paljon riippuvuuksia toimiakseen onnistuneesti.

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 acme.shversio.

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

Hanki RSA- ja ECDSA-sertifikaatit wiki.example.com.

# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d wiki.example.com --ocsp-must-staple --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --standalone --home /etc/letsencrypt -d wiki.example.com --ocsp-must-staple --keylength ec-256

Kun olet suorittanut yllä olevat komennot, varmenteesi ja avaimesi ovat seuraavissa hakemistoissa:

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

HUOMAA: Muista korvata se wiki.example.comverkkotunnuksellasi.

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

Asenna ja määritä Nginx

Wiki.js voi toimia ilman varsinaista verkkopalvelinta, mutta on erittäin suositeltavaa asettaa sen eteen tavallinen verkkopalvelin. Tämä varmistaa, että voit käyttää ominaisuuksia, kuten SSL:ää, useita verkkosivustoja, välimuistia ja muita. Käytämme Nginxiä tässä opetusohjelmassa, mutta mikä tahansa muu palvelin käy, sinun on vain määritettävä se oikein.

Asenna Nginx.

sudo pkg install -y nginx

Tarkista versio.

nginx -v
# nginx version: nginx/1.14.0

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

sudo sysrc nginx_enable=yes
sudo service nginx start

Määritä Nginx HTTPS:ksi (jos käytät SSL:ää) käänteiseksi välityspalvelimeksi Wiki.js-sovellukselle.

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

server {

  listen [::]:443 ssl http2;
  listen 443 ssl http2;
  listen [::]:80;
  listen 80;

  server_name wiki.example.com;

  charset utf-8;
  client_max_body_size 50M;

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

}

Ainoa asia, jota sinun on muutettava yllä olevassa konfiguraatiossa, on server_namedirektiivi ja mahdollisesti proxy_passdirektiivi, jos päätät määrittää jonkin muun portin kuin 3000. Wiki.js käyttää porttia 3000oletuksena. Tallenna tiedosto ja poistu :+ W+Q

Nyt meidän on sisällytettävä wiki.js.conftiedosto nginx.confpäätiedostoon.

Suorita sudo vim /usr/local/etc/nginx/nginx.confja lisää seuraava rivi http {}lohkoon.

include wiki.js.conf;

Tarkista kokoonpano.

sudo nginx -t

Lataa Nginx uudelleen.

sudo service nginx reload

Asenna Wiki.js

Luo tyhjä asiakirjan juurikansio, johon Wiki.js asennetaan.

sudo mkdir -p /usr/local/www/wiki.example.com

Siirry asiakirjan juurikansioon.

cd /usr/local/www/wiki.example.com

Vaihda /usr/local/www/wiki.example.comkansion omistajuus käyttäjäksi johndoe.

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

Vuodesta /usr/local/www/wiki.example.comkansioon, suorita seuraavat komennot ladata ja asentaa Wiki.js.

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

VERSION=$(curl -L -s -S https://beta.requarks.io/api/version/stable)
curl -L -s -S https://github.com/Requarks/wiki/releases/download/v$VERSION/wiki-js.tar.gz | tar -f - -xz -C .
curl -L -s -S https://github.com/Requarks/wiki/releases/download/v$VERSION/node_modules.tar.gz | tar -f - -xz -C .
cp -n config.sample.yml config.yml

Voit suorittaa seuraavan komennon nähdäksesi tällä hetkellä asennetun Wiki.js-version.

node wiki --version
# 1.0.102

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

Käynnistä ohjattu määritystoiminto suorittamalla.

node wiki configure

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

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 ja asenna PM2-prosessinhallinta

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 ja määritettävä PM2-prosessinhallinta.

Asenna PM2 maailmanlaajuisesti kautta npm.

sudo npm install -g pm2

Tarkista versio.

pm2 -v
# 3.2.2

Siirry asiakirjasi juurikansioon, jos et vielä ole siellä, ja lopeta Wiki.js.

cd /usr/local/www/wiki.example.com
node wiki stop

Käynnistä Wiki.js PM2:n kautta.

pm2 start server/index.js --name "Wiki.js"

PM2:n hallinnoima luetteloprosessi.

pm2 list

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

pm2 startup

Lopuksi tallenna nykyinen PM2-kokoonpano suorittamalla komento:

pm2 save

Wiki.js-esiintymäsi toimii nyt taustaprosessina ja käyttää PM2:ta prosessinhallinnanaan.


Kuinka asentaa Tiny Tiny RSS Reader FreeBSD 11 FAMP VPS:ään

Kuinka asentaa Tiny Tiny RSS Reader FreeBSD 11 FAMP VPS:ään

Käytätkö erilaista järjestelmää? Tiny Tiny RSS Reader on ilmainen ja avoimen lähdekoodin itseisännöity verkkopohjainen uutissyötteen (RSS/Atom) lukija ja kokoaja, joka on suunniteltu

Kuinka asentaa Wiki.js FreeBSD 11:een

Kuinka asentaa Wiki.js FreeBSD 11:een

Käytätkö erilaista järjestelmää? Wiki.js on ilmainen ja avoimen lähdekoodin moderni wikisovellus, joka on rakennettu Node.js:lle, MongoDB:lle, Gitille ja Markdownille. Wiki.js-lähdekoodi on julkinen

Pagekit 1.0 CMS:n asentaminen FreeBSD 11 FAMP VPS:ään

Pagekit 1.0 CMS:n asentaminen FreeBSD 11 FAMP VPS:ään

Käytätkö erilaista järjestelmää? Pagekit 1.0 CMS on kaunis, modulaarinen, laajennettava ja kevyt, ilmainen ja avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), jossa on

Kuinka asentaa MODX Revolution FreeBSD 11 FAMP VPS:ään

Kuinka asentaa MODX Revolution FreeBSD 11 FAMP VPS:ään

Käytätkö erilaista järjestelmää? MODX Revolution on nopea, joustava, skaalautuva, avoimen lähdekoodin, yritystason sisällönhallintajärjestelmä (CMS), joka on kirjoitettu PHP:llä. Se minä

Asenna OpenBSD 5.5 64-bittinen

Asenna OpenBSD 5.5 64-bittinen

Tämä artikkeli opastaa sinua määrittämään OpenBSD 5.5 (64-bittinen) KVM:ssä Vultr VPS:n kanssa. Vaihe 1. Kirjaudu Vultr-ohjauspaneeliin. Vaihe 2. Napsauta KÄYTÄ

Kuinka asentaa osTicket FreeBSD 12:een

Kuinka asentaa osTicket FreeBSD 12:een

Käytätkö erilaista järjestelmää? osTicket on avoimen lähdekoodin asiakastuen lippujärjestelmä. osTicket-lähdekoodia isännöidään julkisesti Githubissa. Tässä opetusohjelmassa

Kuinka asentaa Flarum Forum FreeBSD 12:een

Kuinka asentaa Flarum Forum FreeBSD 12:een

Käytätkö erilaista järjestelmää? Flarum on ilmainen ja avoimen lähdekoodin seuraavan sukupolven foorumiohjelmisto, joka tekee online-keskustelusta hauskaa. Flarum-lähdekoodia isännöi o

Kuinka ottaa TLS 1.3 käyttöön Nginxissä FreeBSD 12:ssa

Kuinka ottaa TLS 1.3 käyttöön Nginxissä FreeBSD 12:ssa

Käytätkö erilaista järjestelmää? TLS 1.3 on versio TLS (Transport Layer Security) -protokollasta, joka julkaistiin vuonna 2018 RFC 8446 -standardin ehdotuksena.

Asenna WordPress OpenBSD 6.2:een

Asenna WordPress OpenBSD 6.2:een

Johdanto WordPress on hallitseva sisällönhallintajärjestelmä Internetissä. Se tarjoaa kaiken tehon blogeista monimutkaisiin verkkosivustoihin, joissa on dynaamista sisältöä

Subrion 4.1 CMS:n asentaminen FreeBSD 11 FAMP VPS:ään

Subrion 4.1 CMS:n asentaminen FreeBSD 11 FAMP VPS:ään

Käytätkö erilaista järjestelmää? Subrion 4.1 CMS on tehokas ja joustava avoimen lähdekoodin sisällönhallintajärjestelmä (CMS), joka tuo intuitiivisen ja selkeän sisällön

Kuinka määrittää DJBDNS FreeBSD:ssä

Kuinka määrittää DJBDNS FreeBSD:ssä

Tämä opetusohjelma näyttää, kuinka voit määrittää DNS-palvelun, joka on helppo ylläpitää, helppo määrittää ja joka on yleensä turvallisempi kuin perinteinen BIN.

Nginx-, MySQL- ja PHP (FEMP) -pinon asentaminen FreeBSD 12.0:aan

Nginx-, MySQL- ja PHP (FEMP) -pinon asentaminen FreeBSD 12.0:aan

FEMP-pino, joka on verrattavissa LEMP-pinoon Linuxissa, on kokoelma avoimen lähdekoodin ohjelmistoja, jotka tyypillisesti asennetaan yhdessä mahdollistamaan FreeBS.

MongoDB:n asentaminen FreeBSD 10:een

MongoDB:n asentaminen FreeBSD 10:een

MongoDB on maailmanluokan NoSQL-tietokanta, jota käytetään usein uudemmissa verkkosovelluksissa. Se tarjoaa korkean suorituskyvyn kyselyitä, jakamista ja replikointia

Kuinka asentaa Monica FreeBSD 12:een

Kuinka asentaa Monica FreeBSD 12:een

Käytätkö erilaista järjestelmää? Monica on avoimen lähdekoodin henkilökohtaisten suhteiden hallintajärjestelmä. Ajattele sitä CRM:nä (suosittu työkalu, jota myyntitiimit käyttävät th

OpenBSD verkkokaupparatkaisuna PrestaShopin ja Apachen kanssa

OpenBSD verkkokaupparatkaisuna PrestaShopin ja Apachen kanssa

Johdanto Tämä opetusohjelma esittelee OpenBSD:n verkkokaupparatkaisuna PrestaShopilla ja Apachella. Apache vaaditaan, koska PrestaShopilla on monimutkainen UR

Installing Fork CMS on FreeBSD 12

Installing Fork CMS on FreeBSD 12

Using a Different System? Fork is an open source CMS written in PHP. Forks source code is hosted on GitHub. This guide will show you how to install Fork CM

Directus 6.4 CMS:n asentaminen FreeBSD 11 FAMP VPS:ään

Directus 6.4 CMS:n asentaminen FreeBSD 11 FAMP VPS:ään

Käytätkö erilaista järjestelmää? Directus 6.4 CMS on tehokas ja joustava, ilmainen ja avoimen lähdekoodin päätön sisällönhallintajärjestelmä (CMS), joka tarjoaa kehittäjille

FreeBSD:n suojauksen parantaminen IPFW:n ja SSHGuardin avulla

FreeBSD:n suojauksen parantaminen IPFW:n ja SSHGuardin avulla

VPS-palvelimet ovat usein tunkeilijoiden kohteena. Yleinen hyökkäystyyppi näkyy järjestelmälokeissa sadoina luvattomina ssh-kirjautumisyrityksinä. Asettaa

Asenna httpd OpenBSD:ssä

Asenna httpd OpenBSD:ssä

Johdanto OpenBSD 5.6 esitteli uuden daemonin nimeltä httpd, joka tukee CGI:tä (FastCGI:n kautta) ja TLS:ää. Uuden http:n asentaminen ei vaadi lisätyötä

Asenna iRedMail FreeBSD 10:ssä

Asenna iRedMail FreeBSD 10:ssä

Tämä opetusohjelma näyttää, kuinka asennat ryhmätyöohjelman iRedMail uuteen FreeBSD 10:n asennukseen. Sinun tulee käyttää palvelinta, jossa on vähintään yksi gigatavu

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