Inštalácia wiki na Debian 9

Nastavte časové pásmo

dpkg-reconfigure tzdata

Urobte update

apt update && apt upgrade -y

Nainštalujte základné balíčky, ktoré sú užitočné  pre administráciu.

apt install -y curl wget vim git unzip socat sudo bash-completion apt-transport-https build-essential dirmngr

Naištalujte Node.js a npm

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

môžete si overiť akú verziu Node.js máte nainštalovanú

node -v && npm -v

Môžete aktualizovať Npm. To je separátny projekt od Node.js. Má tendenciu sa aktualizovať aj sám, ale ja som ho pri inštalácií použil

sudo npm install -g npm@latest

Môžete skontrolovať aktuálnu veziu

npm -v

Nainštalujte MongoDB database. Wiki.js potrebuje databázu MongoDB

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
echo "deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
sudo apt-get update
sudo apt-get install -y mongodb-org

Môžete pozrieť aktuálnu verziu

mongo --version | head -n 1 && mongod --version | head -n 1

Po inštalácií reštartujte databázu

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

Nainštalujte a nakonfigurujte 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/debian/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/debian/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx

Keď sa nainštalovalo všetko správne viete si to overiť, s tým, že zadáte IP adresu do webového prehliadača

Teraz musíte nakonfigurovať wiki.js.conf

sudo vim /etc/nginx/conf.d/wiki.js.conf

A do configu skopírujte:

server {
    
    listen [::]:443 ssl http2;
    listen 443 ssl http2;
    listen [::]:80;
    listen 80;
    
    server_name example.com;

    charset utf-8;
    client_max_body_size 50M;

    ssl_certificate /etc/letsencrypt/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/example.com/private.key;
    ssl_certificate /etc/letsencrypt/example.com_ecc/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/example.com_ecc/private.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;
    }
    
}

Uložte to

Teraz reštartujte zmeny

sudo systemctl reload nginx.service

Inštalácia a nastavenie wiki

Vytvorte root adresár, kde sa budú nachádzať wiki.js súbory

sudo mkdir -p /var/www/wiki.js

Prejdite do dokumentu

cd /var/www/wiki.js

Zmeňte vlastníka

/var/www/wiki.js
sudo chown -R [your_user]:[your_user] /var/www/wiki.js

Napríklad:

sudo chown -R root:root /var/www/wiki.js

Z adresára /var/www/wiki.js spustite nasledujúci príkaz na načítanie a inštaláciu najnovšej wiki.js

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

Príkazom si môžete pozrieť nainštalovanú verziu wiki

node wiki --version

Teraz spustite príkaz na konfiguráciu wiki

node wiki configure

Choďte cez webový prehliadač, a zadajte IP adresu v tvare X.X.X.X/3000. 3000 je defaultný port pre wiki.

Kliknite „START“

Zvoľte „CONTINUE“

Ja som to robil na virtuálnom servery, takže ja som tam dal verejnú IP adresu a pôvodný port

Kliknite na „CONTINUE“

Kliknite na „CONTINUE“

V tomto kroku nechajte tak ak oje nastavené a zvoľte „CONNECT“

Zvoľte „CONTINUE“

Tento krok som preskočil, neimplementoval som SSL certifikát. „SKIP THIS STEP“

Skontroluje Git a zvoľte možnosť „CONTINUE“

V ďalšom kroku vypíšte email a heslo k wiki

Zvoľte „CONTINUE“

V ďalšom kroku spustite „START“

Po 30 sekundách Vás to presmeruje na nejakú stránku

Teraz keď otvoríte webový prehliadač a sa prihlásite, tak môžete používať wikipédiu. Ja som si zvolil prihlásenie cez IP adresu a port 3000 (X.X.X.X/3000)

Okno po prihlásení

Ešte sa to ale stále nezobrazuje dobre. Dôvod je ten, že sa nám nenačítava javascript a CSS. Musíte vytvoriť bezpečný prístup k portu.Takže sú 2 možnosti aby sa nám správne načítala naša Wiki.

sudo apt-get install libcap2-bin
sudo setcap cap_net_bind_service=+ep `readlink -f \`which node\``

Alebo zadáte pravidlo do IP tables

docker run -d -p 80:3000 -p 443:3443 -e "LETSENCRYPT_DOMAIN=wiki.example.com" -e "LETSENCRYPT_EMAIL=admin@example.com" --name wiki --restart unless-stopped -e "DB_TYPE=postgres" -e "DB_HOST=db" -e "DB_PORT=5432" -e "DB_USER=wikijs" -e "DB_PASS=wikijsrocks" -e "DB_NAME=wiki" requarks/wiki:2

Informácie som čerpal odtiaľto