Si të instaloni Wiki.js në FreeBSD 11

Wiki.js është një aplikacion modern wiki falas dhe me burim të hapur i ndërtuar në Node.js, MongoDB, Git dhe Markdown. Kodi burimor i Wiki.js është i pritur publikisht në Github . Ky udhëzues do t'ju tregojë se si të instaloni Wiki.js në një shembull të ri të FreeBSD 11 Vultr duke përdorur Node.js, MongoDB, PM2, Nginx, Git dhe Acme.sh.

Kërkesat

Kërkesat për të ekzekutuar Wiki.js janë si më poshtë:

  • Node.js versioni 6.11.1 ose më i ri
  • Versioni i MongoDB 3.2 ose më i ri
  • Versioni Git 2.7.4 ose më i ri
  • Një server në internet si Nginx, Apache, IIS, Caddy ose H2O. Ky udhëzues do të përdorë Nginx.
  • Një depo e përputhshme me Git (publike ose private) Kjo është fakultative
  • Një minimum prej 512 MB RAM. Rekomandohet shumë të përdorni një makinë me të paktën 1 GB RAM.
  • Emri i domenit me A/ AAAAkonfigurimin e regjistrimeve. Në këtë udhëzues ne do të përdorim wiki.example.comsi një domen shembull.

Perpara se te fillosh

Kontrolloni versionin e FreeBSD.

uname -ro
# FreeBSD 11.2-RELEASE

Sigurohuni që sistemi juaj FreeBSD të jetë i përditësuar.

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

Instaluar sudo, vim, unzip, wget, git, bashdhe socatpaketa qoftë se ata nuk janë të pranishëm në sistemin tuaj.

pkg install -y sudo vim unzip wget git bash socat

Krijoni një llogari të re përdoruesi me emrin tuaj të preferuar të përdoruesit (ne do të përdorim 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!

Ekzekutoni visudokomandën dhe hiqni komentin e %wheel ALL=(ALL) ALLlinjës, për të lejuar anëtarët e wheelgrupit të ekzekutojnë çdo komandë.

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

Tani, kaloni te përdoruesi juaj i sapokrijuar.

su - johndoe

SHËNIM: Zëvendësojeni johndoeme emrin tuaj të përdoruesit.

Vendosni zonën kohore.

sudo tzsetup

Instaloni Node.js

Wiki.js kërkon Node.js 6.11.1 ose version më të ri, kështu që fillimisht do të na duhet të instalojmë versionin e duhur të Node.js.

Instaloni Node.js dhe NPM.

sudo pkg install -y node8 npm-node8

Kontrolloni versionet.

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

Instaloni MongoDB

Wiki.js përdor MongoDB si një motor bazë të dhënash.

Instaloni MongoDB.

sudo pkg install -y mongodb36

Kontrolloni versionin.

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

Aktivizo dhe nis MongoDB.

sudo sysrc mongod_enable=yes
sudo service mongod start

Instaloni Acme.sh dhe merrni një certifikatë Let's Encrypt ( opsionale )

Sigurimi i wiki-t tuaj me HTTPS nuk është i nevojshëm, por është një praktikë e mirë për të siguruar trafikun e faqes suaj. Për të marrë një certifikatë SSL nga Let's Encrypt ne do të përdorim klientin Acme.sh. Acme.sh është një softuer i pastër i guaskës unix për marrjen e certifikatave SSL nga Let's Encrypt me zero varësi. Kjo e bën atë shumë të lehtë në krahasim me disa klientë të tjerë të protokollit Acme që kërkojnë shumë varësi për të ekzekutuar me sukses.

Shkarkoni dhe instaloni 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 ~

Kontrolloni acme.shversionin.

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

Merrni certifikatat RSA dhe ECDSA për 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

Pas ekzekutimit të komandave të mësipërme, certifikatat dhe çelësat tuaj do të jenë në drejtoritë e mëposhtme:

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

SHËNIM: Mos harroni të zëvendësoni wiki.example.comme emrin e domain.

Pas marrjes së certifikatave nga Let's Encrypt, duhet të konfigurojmë Nginx për të përfituar prej tyre.

Instaloni dhe konfiguroni Nginx

Wiki.js mund të funksionojë pa ndonjë server aktual në internet, megjithatë rekomandohet shumë që të vendosni një server standard në internet përpara tij. Kjo siguron që ju të mund të përdorni veçori si SSL, uebfaqe të shumta, memorie dhe të tjera. Ne do të përdorim Nginx në këtë tutorial, por çdo server tjetër do ta bëjë këtë, ju vetëm duhet ta konfiguroni atë siç duhet.

Instaloni Nginx.

sudo pkg install -y nginx

Kontrolloni versionin.

nginx -v
# nginx version: nginx/1.14.0

Aktivizo dhe nis Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Konfiguro Nginx si një përfaqësues të kundërt HTTPS (nëse përdorni SSL) për aplikacionin Wiki.js.

Ekzekutoni sudo vim /usr/local/etc/nginx/wiki.js.confdhe plotësoni atë me konfigurimin bazë të përfaqësuesit të kundërt më poshtë.

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

}

E vetmja gjë që duhet të ndryshoni në konfigurimin e mësipërm është server_namedirektiva, dhe potencialisht proxy_passdirektiva nëse vendosni të konfiguroni një port tjetër përveç 3000. Wiki.js përdor portin si 3000parazgjedhje. Ruani skedarin dhe dilni me :+ W+Q

Tani duhet të përfshijmë wiki.js.confskedarin në nginx.confskedarin kryesor .

Ekzekutoni sudo vim /usr/local/etc/nginx/nginx.confdhe shtoni rreshtin e mëposhtëm në http {}bllok.

include wiki.js.conf;

Kontrolloni konfigurimin.

sudo nginx -t

Rifresko Nginx.

sudo service nginx reload

Instaloni Wiki.js

Krijo një dosje të zbrazët rrënjësore të dokumentit ku do të instalohet Wiki.js.

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

Navigoni te dosja rrënjë e dokumentit.

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

Ndrysho pronësinë e /usr/local/www/wiki.example.comdosjes në përdorues johndoe.

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

Nga /usr/local/www/wiki.example.comdosja, ekzekutoni komandat e mëposhtme për të shkarkuar dhe instaluar 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

Ju mund të ekzekutoni komandën e mëposhtme për të parë versionin e instaluar aktualisht të Wiki.js.

node wiki --version
# 1.0.102

Pasi të përfundojë instalimi, do t'ju kërkohet të ekzekutoni magjistarin e konfigurimit.

Nisni magjistarin e konfigurimit duke ekzekutuar.

node wiki configure

Kjo do t'ju njoftojë për të lundruar për http://localhost:3000të konfiguruar Wiki.js. Nëse keni Nginx përpara Wiki.js, atëherë do të thotë që mund të hapni emrin e domenit tuaj (p.sh. http://wiki.example.com) në vend që të shkoni te localhost.

Duke përdorur shfletuesin tuaj të internetit, lundroni http://wiki.example.comdhe ndiqni udhëzimet në ekran. Të gjitha cilësimet e futura gjatë magjistarit të konfigurimit ruhen në config.ymlskedar. Magjistari i konfigurimit do të nisë automatikisht Wiki.js për ju.

Instaloni dhe konfiguroni menaxherin e procesit PM2

Si parazgjedhje, Wiki.js nuk do të fillojë automatikisht pas një rindezjeje të sistemit. Për ta bërë atë të fillojë në nisje, duhet të instalojmë dhe konfigurojmë menaxherin e procesit PM2.

Instaloni PM2 globalisht nëpërmjet npm.

sudo npm install -g pm2

Kontrolloni versionin.

pm2 -v
# 3.2.2

Navigoni te dosja kryesore e dokumentit nëse nuk jeni tashmë atje dhe ndaloni Wiki.js.

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

Filloni Wiki.js nëpërmjet PM2.

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

Procesi i listës i menaxhuar nga PM2.

pm2 list

Thuaji PM2 të konfigurojë veten si një shërbim fillestar duke ekzekutuar:

pm2 startup

Më në fund, ruani konfigurimin aktual PM2 duke ekzekutuar komandën:

pm2 save

Shembulli juaj Wiki.js tani funksionon si një proces sfondi, duke përdorur PM2 si menaxherin e tij të procesit.


Si të instaloni Tiny Tiny RSS Reader në një FreeBSD 11 FAMP VPS

Si të instaloni Tiny Tiny RSS Reader në një FreeBSD 11 FAMP VPS

Përdorimi i një sistemi të ndryshëm? Tiny Tiny RSS Reader është një lexues dhe grumbullues i lajmeve të bazuara në ueb (RSS/Atom), falas dhe me burim të hapur, i krijuar për të dhënë

Si të instaloni Wiki.js në FreeBSD 11

Si të instaloni Wiki.js në FreeBSD 11

Përdorimi i një sistemi të ndryshëm? Wiki.js është një aplikacion modern wiki falas dhe me burim të hapur i ndërtuar në Node.js, MongoDB, Git dhe Markdown. Kodi burimor i Wiki.js është publik

Si të instaloni Pagekit 1.0 CMS në një FreeBSD 11 FAMP VPS

Si të instaloni Pagekit 1.0 CMS në një FreeBSD 11 FAMP VPS

Përdorimi i një sistemi të ndryshëm? Pagekit 1.0 CMS është një Sistem i Menaxhimit të Përmbajtjes (CMS) i bukur, modular, i zgjatshëm dhe i lehtë, pa pagesë dhe me burim të hapur me

Si të instaloni MODX Revolution në një FreeBSD 11 FAMP VPS

Si të instaloni MODX Revolution në një FreeBSD 11 FAMP VPS

Përdorimi i një sistemi të ndryshëm? MODX Revolution është një Sistem i Menaxhimit të Përmbajtjes (CMS) i shpejtë, fleksibël, i shkallëzuar, me burim të hapur, i shkallës së ndërmarrjes, i shkruar në PHP. Ajo i

Konfiguro OpenBSD 5.5 64-bit

Konfiguro OpenBSD 5.5 64-bit

Ky artikull ju udhëzon në konfigurimin e OpenBSD 5.5 (64-bit) në KVM me një Vultr VPS. Hapi 1. Hyni në panelin e kontrollit Vultr. Hapi 2. Klikoni DEPLOY

Si të instaloni osTicket në FreeBSD 12

Si të instaloni osTicket në FreeBSD 12

Përdorimi i një sistemi të ndryshëm? osTicket është një sistem biletash për mbështetjen e klientit me burim të hapur. Kodi burimor i osTicket është i pritur publikisht në Github. Në këtë tutorial

Si të instaloni Flarum Forum në FreeBSD 12

Si të instaloni Flarum Forum në FreeBSD 12

Përdorimi i një sistemi të ndryshëm? Flarum është një softuer forumi i gjeneratës së ardhshme pa pagesë dhe me burim të hapur që e bën diskutimin në internet argëtues. Kodi burimor i Flarum është pritur o

Si të aktivizoni TLS 1.3 në Nginx në FreeBSD 12

Si të aktivizoni TLS 1.3 në Nginx në FreeBSD 12

Përdorimi i një sistemi të ndryshëm? TLS 1.3 është një version i protokollit të Sigurisë së Shtresës së Transportit (TLS) që u publikua në 2018 si një standard i propozuar në RFC 8446

Instaloni WordPress në OpenBSD 6.2

Instaloni WordPress në OpenBSD 6.2

Hyrje WordPress është sistemi dominues i menaxhimit të përmbajtjes në internet. Ai fuqizon gjithçka, nga blogjet tek faqet e internetit komplekse me përmbajtje dinamike

Si të instaloni Subrion 4.1 CMS në një FreeBSD 11 FAMP VPS

Si të instaloni Subrion 4.1 CMS në një FreeBSD 11 FAMP VPS

Përdorimi i një sistemi të ndryshëm? Subrion 4.1 CMS është një sistem i fuqishëm dhe fleksibël i menaxhimit të përmbajtjes me burim të hapur (CMS) që sjell një përmbajtje intuitive dhe të qartë

Si të konfiguroni DJBDNS në FreeBSD

Si të konfiguroni DJBDNS në FreeBSD

Ky tutorial do t'ju tregojë se si të konfiguroni një shërbim DNS që është i lehtë për t'u mirëmbajtur, i lehtë për t'u konfiguruar dhe që në përgjithësi është më i sigurt se BIN klasik.

Si të instaloni Nginx, MySQL dhe PHP (FEMP) Stack në FreeBSD 12.0

Si të instaloni Nginx, MySQL dhe PHP (FEMP) Stack në FreeBSD 12.0

Një grumbull FEMP, i cili është i krahasueshëm me një pirg LEMP në Linux, është një koleksion softuerësh me burim të hapur që zakonisht instalohet së bashku për të mundësuar një FreeBS

Instalimi i MongoDB në FreeBSD 10

Instalimi i MongoDB në FreeBSD 10

MongoDB është një bazë të dhënash NoSQL e klasit botëror që përdoret shpesh në aplikacionet më të reja në internet. Ai siguron pyetje, ndarje dhe përsëritje me performancë të lartë

Si të instaloni Monica në FreeBSD 12

Si të instaloni Monica në FreeBSD 12

Përdorimi i një sistemi të ndryshëm? Monica është një sistem i menaxhimit të marrëdhënieve personale me burim të hapur. Mendoni për atë si një CRM (një mjet popullor i përdorur nga ekipet e shitjeve në th

OpenBSD si një zgjidhje për tregtinë elektronike me PrestaShop dhe Apache

OpenBSD si një zgjidhje për tregtinë elektronike me PrestaShop dhe Apache

Hyrje Ky tutorial demonstron OpenBSD si një zgjidhje e-commerce duke përdorur PrestaShop dhe Apache. Kërkohet Apache sepse PrestaShop ka UR komplekse

Instalimi i Fork CMS në FreeBSD 12

Instalimi i Fork CMS në FreeBSD 12

Përdorimi i një sistemi të ndryshëm? Fork është një CMS me burim të hapur i shkruar në PHP. Kodi burimor i Forks është pritur në GitHub. Ky udhëzues do t'ju tregojë se si të instaloni Fork CM

Si të instaloni Directus 6.4 CMS në një FreeBSD 11 FAMP VPS

Si të instaloni Directus 6.4 CMS në një FreeBSD 11 FAMP VPS

Përdorimi i një sistemi të ndryshëm? Directus 6.4 CMS është një sistem i fuqishëm dhe fleksibël, pa pagesë dhe me burim të hapur Headless Content Management System (CMS) që ofron zhvillues

Rritja e sigurisë për FreeBSD duke përdorur IPFW dhe SSHGuard

Rritja e sigurisë për FreeBSD duke përdorur IPFW dhe SSHGuard

Serverët VPS janë shpesh në shënjestër nga ndërhyrës. Një lloj i zakonshëm sulmi shfaqet në regjistrat e sistemit si qindra përpjekje të paautorizuara për hyrje ssh. Vendosja

Konfiguro httpd në OpenBSD

Konfiguro httpd në OpenBSD

Hyrje OpenBSD 5.6 prezantoi një daemon të ri të quajtur httpd, i cili mbështet CGI (nëpërmjet FastCGI) dhe TLS. Nuk nevojitet punë shtesë për të instaluar http-in e ri

Konfiguro iRedMail në FreeBSD 10

Konfiguro iRedMail në FreeBSD 10

Ky tutorial do t'ju tregojë se si të instaloni grupin iRedMail në një instalim të ri të FreeBSD 10. Ju duhet të përdorni një server me të paktën një gigabajt o

Ngritja e makinave: Aplikimet në botën reale të AI

Ngritja e makinave: Aplikimet në botën reale të AI

Inteligjenca Artificiale nuk është në të ardhmen, është këtu në të tashmen Në këtë blog Lexoni se si aplikacionet e inteligjencës artificiale kanë ndikuar në sektorë të ndryshëm.

Sulmet DDOS: Një përmbledhje e shkurtër

Sulmet DDOS: Një përmbledhje e shkurtër

A jeni edhe ju viktimë e Sulmeve DDOS dhe jeni konfuz në lidhje me metodat e parandalimit? Lexoni këtë artikull për të zgjidhur pyetjet tuaja.

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

A e keni pyetur ndonjëherë veten se si fitojnë para hakerët?

Ju mund të keni dëgjuar se hakerët fitojnë shumë para, por a keni menduar ndonjëherë se si i fitojnë ato para? Le te diskutojme.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Shpikjet revolucionare nga Google që do tju bëjnë të lehtë jetën tuaj.

Dëshironi të shihni shpikjet revolucionare nga Google dhe se si këto shpikje ndryshuan jetën e çdo njeriu sot? Më pas lexoni në blog për të parë shpikjet nga Google.

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

E Premte Thelbësore: Çfarë ndodhi me Makinat e drejtuara nga AI?

Koncepti i makinave vetë-drejtuese për të dalë në rrugë me ndihmën e inteligjencës artificiale është një ëndërr që e kemi prej kohësh. Por, pavarësisht nga disa premtime, ato nuk shihen askund. Lexoni këtë blog për të mësuar më shumë…

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Singulariteti teknologjik: Një e ardhme e largët e qytetërimit njerëzor?

Ndërsa Shkenca evoluon me një ritëm të shpejtë, duke marrë përsipër shumë nga përpjekjet tona, rriten edhe rreziqet për t'iu nënshtruar një Singulariteti të pashpjegueshëm. Lexoni, çfarë mund të thotë singulariteti për ne.

Evolucioni i ruajtjes së të dhënave - Infografik

Evolucioni i ruajtjes së të dhënave - Infografik

Metodat e ruajtjes së të dhënave kanë evoluar mund të jenë që nga lindja e të dhënave. Ky blog mbulon evolucionin e ruajtjes së të dhënave në bazë të një infografike.

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Funksionalitetet e shtresave të arkitekturës së referencës së të dhënave të mëdha

Lexoni blogun për të njohur shtresat e ndryshme në arkitekturën e të dhënave të mëdha dhe funksionalitetet e tyre në mënyrën më të thjeshtë.

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

6 Përfitimet e mahnitshme të të pasurit pajisje shtëpiake inteligjente në jetën tonë

Në këtë botë të drejtuar nga dixhitali, pajisjet inteligjente të shtëpisë janë bërë një pjesë thelbësore e jetës. Këtu janë disa përfitime të mahnitshme të pajisjeve shtëpiake inteligjente se si ato e bëjnë jetën tonë të vlefshme dhe më të thjeshtë.

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Përditësimi shtesë i macOS Catalina 10.15.4 po shkakton më shumë probleme sesa zgjidhja

Së fundmi Apple lëshoi ​​macOS Catalina 10.15.4 një përditësim shtesë për të rregulluar problemet, por duket se përditësimi po shkakton më shumë probleme që çojnë në bricking të makinerive mac. Lexoni këtë artikull për të mësuar më shumë