Gollum è un software wiki basato su Git che utilizza GitHub Wiki come backend. Questo software open source gratuito è scritto in Ruby e viene fornito con una semplice interfaccia web per creare e gestire le pagine dal browser web. Gollum supporta una varietà di formati tra cui markup Markdown, AsciiDoc, ReStructuredText, Creole e MediaWiki.
In questo tutorial, ti mostreremo come installare Gollum con Nginx come proxy inverso su Debian 10.
Prerequisiti
- Un nuovo server privato virtuale Debian 10 sulla piattaforma Atlantic.net Cloud
- Un nome di dominio valido puntato all'IP del tuo server
- Una password di root configurata sul tuo server
Fase 1:crea un server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Debian 10 come sistema operativo con almeno 2 GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Dopo aver effettuato l'accesso al tuo server Debian 10, esegui il seguente comando per aggiornare il tuo sistema di base con gli ultimi pacchetti disponibili.
apt-get update -y
Passaggio 2:installazione delle dipendenze richieste
Gollum è scritto in Ruby, quindi dovrai installare Ruby e altre dipendenze nel tuo sistema. Puoi installarli tutti usando il seguente comando:
apt-get install ruby ruby-dev cmake libssl-dev pkg-config build-essential zlib1g-dev libicu-dev git - y
Una volta installati tutti i pacchetti, puoi procedere al passaggio successivo.
Fase 3:installa Gollum
Quindi, esegui il comando seguente per installare Gollum con altri pacchetti richiesti:
gem install gollum org-ruby omnigollum github-markup omniauth-github
Quindi, installa i markup di tipo GitHub Flavored Markdown, Textile e MediaWiki usando il seguente comando:
gem install wikicloth gem install RedCloth gem install github-markdown
Dopo aver installato tutti i pacchetti, puoi procedere al passaggio successivo.
Fase 4:imposta il repository Git
Successivamente, dovrai configurare un repository Git per Gollum. Innanzitutto, configura il nome utente e l'indirizzo e-mail Git con il seguente comando:
git config --global user.name "Gollum Admin" git config --global user.email "[email protected]"
Quindi, crea una directory con nome mywiki e inizializzala con il seguente comando:
mkdir mywiki cd mywiki git init .
Una volta terminato, puoi procedere al passaggio successivo.
Fase 5 – Configura Gollum
Successivamente, dovrai creare una directory di configurazione di Gollum nel tuo sistema. Puoi crearlo con il seguente comando:
mkdir /etc/gollum/
Quindi, crea un file di configurazione di Gollum usando il seguente comando:
nano /etc/gollum/config.rb
Aggiungi le seguenti righe:
=begin This file can be used to (e.g.): - alter certain inner parts of Gollum, - extend it with your stuff. It is especially useful for customizing supported formats/markups. For more information and examples: - https://github.com/gollum/gollum#config-file =end
Salva e chiudi il file quando hai finito.
Fase 6:crea un file di servizio Systemd per Gollum
Successivamente, dovrai creare un file di servizio systemd Gollum per gestire il servizio Gollum. Puoi crearlo con il seguente comando:
nano /etc/systemd/system/gollum.service
Aggiungi le seguenti righe:
[Unit] Description=Gollum wiki server After=network.target After=syslog.target [Service] Type=simple User=root Group=root WorkingDirectory=/root/mywiki/ ExecStart=/usr/local/bin/gollum --config "/etc/gollum/config.rb" Restart=on-abort [Install] WantedBy=multi-user.target
Salva e chiudi il file, quindi ricarica il demone systemd con il seguente comando:
systemctl daemon-reload
Quindi, avvia il servizio Gollum e abilitalo all'avvio al riavvio del sistema con il seguente comando:
systemctl start gollum systemctl enable gollum
Puoi verificare lo stato del servizio Gollum utilizzando il seguente comando:
systemctl status gollum
Dovresti ottenere il seguente output:
gollum.service - Gollum wiki server Loaded: loaded (/etc/systemd/system/gollum.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-10-10 15:28:00 UTC; 3s ago Main PID: 23069 (gollum) Tasks: 2 (limit: 4701) Memory: 61.8M CGroup: /system.slice/gollum.service └─23069 /usr/bin/ruby2.5 /usr/local/bin/gollum --config /etc/gollum/config.rb Oct 10 15:28:00 debian10 systemd[1]: Started Gollum wiki server.
A questo punto Gollum è avviato ed è in ascolto sulla porta 4567. Puoi verificarlo con il seguente comando:
ss -tunelp | grep 4567
Dovresti ottenere il seguente output:
tcp LISTEN 0 128 0.0.0.0:4567 0.0.0.0:* users:(("gollum",pid=23069,fd=7)) ino:41646 sk:9 <->
Passaggio 7:configurare Nginx per Gollum
Successivamente, dovrai installare e configurare Nginx come proxy inverso per accedere a Gollum utilizzando la porta 80. Innanzitutto, installa il server Web Nginx eseguendo il comando seguente:
apt-get install nginx -y
Una volta installato, crea un nuovo file di configurazione dell'host virtuale Nginx con il seguente comando:
nano /etc/nginx/conf.d/gollum.conf
Aggiungi le seguenti righe:
server { listen 80; server_name gollum.example.com; location / { proxy_pass http://127.0.0.1:4567; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_connect_timeout 150; proxy_send_timeout 100; proxy_read_timeout 100; proxy_buffers 4 32k; client_max_body_size 500m; client_body_buffer_size 128k; } access_log /var/log/nginx/gollum-access.log; error_log /var/log/nginx/gollum-error.log; }
Salva e chiudi il file quando hai finito. Quindi, riavvia il servizio Nginx per applicare le modifiche:
.
Se ricevi errori, dovrai modificare il file di configurazione del server predefinito di Nginx e impostare server_names_hash_bucket_size:
nano /etc/nginx/nginx.conf
Aggiungi la seguente riga sotto http {:
server_names_hash_bucket_size 64;
Salva e chiudi il file, quindi riavvia il servizio Nginx per applicare le modifiche:
systemctl restart nginx
Passaggio 8:accedi all'interfaccia utente Web di Gollum
Ora apri il tuo browser web e digita l'URL http://gollum.example.com. Dovresti vedere la dashboard di Gollum nella schermata seguente:
Ora crea la tua prima pagina aggiungendo alcuni contenuti e fai clic su Salva pulsante. Dovresti vedere la tua Home page nella schermata seguente:
Conclusione
Nella guida sopra, hai imparato come installare il wiki di Gollum con Nginx come proxy inverso su Debian 10. Ora puoi facilmente distribuire il wiki in stile GitHub con Gollum. Prova Gollum su VPS Hosting da Atlantic.Net oggi!