Wiki.js funziona su qualsiasi sistema in cui gira Node.js che esso sia Linux, macOS o Windows.
L’installazione sotto riportata è effettuata su una VPS con Ubuntu 22.04 LTS
Wiki.js ha necessità di un dominio di II° o di III° livello (es.: dominio.it oppure wiki.dominio.it)
L’installazione comprende:
Docker – PostgreSQL 15 (dockerized) – Wiki.js 2.x (dockerized, accessibile alla porta80) – Wiki.js Update Companion (dockerized) – OpenSSH con UFW Firewall preconfigurato per SSH, HTTP e HTTPS
Iniziamo aggiornando la nostra macchina
sudo apt -qqy update sudo DEBIAN_FRONTEND=noninteractive apt-get -qqy -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' dist-upgrade
Installiamo Docker
sudo apt -qqy -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' install ca-certificates curl gnupg lsb-release sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt -qqy update sudo apt -qqy -o Dpkg::Options::='--force-confdef' -o Dpkg::Options::='--force-confold' install docker-ce docker-ce-cli containerd.io docker-compose-plugin
Effettuiamo il setup del containers
mkdir -p /etc/wiki openssl rand -base64 32 > /etc/wiki/.db-secret docker network create wikinet docker volume create pgdata docker create --name=db -e POSTGRES_DB=wiki -e POSTGRES_USER=wiki -e POSTGRES_PASSWORD_FILE=/etc/wiki/.db-secret -v /etc/wiki/.db-secret:/etc/wiki/.db-secret:ro -v pgdata:/var/lib/postgresql/data --restart=unless-stopped -h db --network=wikinet postgres:15 docker create --name=wiki -e DB_TYPE=postgres -e DB_HOST=db -e DB_PORT=5432 -e DB_PASS_FILE=/etc/wiki/.db-secret -v /etc/wiki/.db-secret:/etc/wiki/.db-secret:ro -e DB_USER=wiki -e DB_NAME=wiki -e UPGRADE_COMPANION=1 --restart=unless-stopped -h wiki --network=wikinet -p 80:3000 -p 443:3443 ghcr.io/requarks/wiki:2 docker create --name=wiki-update-companion -v /var/run/docker.sock:/var/run/docker.sock:ro --restart=unless-stopped -h wiki-update-companion --network=wikinet ghcr.io/requarks/wiki-update-companion:latest
Configuriamo il firewall
sudo ufw allow ssh sudo ufw allow http sudo ufw allow https sudo ufw --force enable
Avviamo il containers
docker start db docker start wiki docker start wiki-update-companion
Fatto questo apri il tuo browser e digita l’IP o il dominio dove hai installato il wiki.
Ti consiglio di attendere qualche minuto se vedi che non raggiungi la pagina, dando cosi il tempo al container di avviarsi.
Completa la procedura a video per concludere l’installazione.
Abbiamo parlato di Containers (Docker) ma cosa è ed a cosa serve? Leggi l’articolo qui
In teoria abbiamo finito, ma occorre innanzi tutto installare un certificato SSL per rendere sicura l’applicazione e quindi ci serviremo di Let’s Encrypt.