Ricerca nel sito web

Come installare Discourse Forum con Nginx su Rocky Linux 9


Discourse è una piattaforma di discussione comunitaria open source creata utilizzando il linguaggio Ruby. È progettato per funzionare come forum, software di chat o mailing list. Si integra facilmente con altre piattaforme e può essere esteso tramite plugin.

In questo tutorial imparerai come installare Discourse Forum con il server Nginx su un server che esegue Rocky Linux 9.

Prerequisiti

    Un server che esegue Rocky Linux 9 con un minimo di 1 GB di RAM e 1 CPU Core. La configurazione del discorso creerà automaticamente una partizione di swap sui sistemi con 1 GB o meno di RAM. Pertanto si consiglia di installarlo su un sistema con almeno 2 GB di RAM.

    Un utente non root con privilegi sudo.

    Un nome di dominio (discourse.example.com) che punta al server.

    Tutto è aggiornato.

    $ sudo dnf update
    

    Pochi pacchetti di cui il tuo sistema ha bisogno.

    $ sudo dnf install wget curl nano unzip yum-utils -y
    

    Alcuni di questi pacchetti potrebbero essere già installati sul tuo sistema.

Passaggio 1: configurare il firewall

Il primo passo è configurare il firewall. Rocky Linux utilizza Firewalld Firewall. Controlla lo stato del firewall.

$ sudo firewall-cmd --state
running

Il firewall funziona con zone diverse e la zona pubblica è quella predefinita che utilizzeremo. Elenca tutti i servizi e le porte attive sul firewall.

$ sudo firewall-cmd --permanent --list-services

Dovrebbe mostrare il seguente output.

cockpit dhcpv6-client ssh

Discourse ha bisogno di porte HTTP e HTTPS per funzionare. Aprili.

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https

Aggiungi mascheramento, poiché l'applicazione contatterà altre istanze.

$ sudo firewall-cmd --permanent --add-masquerade

Ricaricare il firewall per applicare le modifiche.

$ sudo firewall-cmd --reload

Elenca nuovamente tutti i servizi.

$ sudo firewall-cmd --permanent --list-services

Dovresti ottenere il seguente output.

cockpit dhcpv6-client http https ssh

Configura SELinux

Il discorso non sarà accessibile anche se apri le porte a causa della politica di accesso di SELinux. Configura SELinux per consentire le connessioni di rete.

$ sudo setsebool -P httpd_can_network_connect 1

Passaggio 2: installa Git

Installa Git.

$ sudo dnf install git

Conferma l'installazione.

$ git --version
git version 2.31.1

Esegui i seguenti comandi per configurare l'installazione di Git.

$ git config --global user.name "Your Name"
$ git config --global user.email "[email "

Passaggio 3: installare Docker

Rocky Linux viene fornito con una versione precedente di Docker. Per installare la versione più recente, installare innanzitutto il repository Docker ufficiale.

$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

Installa l'ultima versione di Docker.

$ sudo dnf install docker-ce docker-ce-cli containerd.io

Potresti ricevere il seguente errore durante il tentativo di installazione di Docker.

ror: 
 Problem: problem with installed package buildah-1:1.26.2-1.el9_0.x86_64
  - package buildah-1:1.26.2-1.el9_0.x86_64 requires runc >= 1.0.0-26, but none of the providers can be installed
  - package containerd.io-1.6.9-3.1.el9.x86_64 conflicts with runc provided by runc-4:1.1.3-2.el9_0.x86_64
  - package containerd.io-1.6.9-3.1.el9.x86_64 obsoletes runc provided by runc-4:1.1.3-2.el9_0.x86_64
  - cannot install the best candidate for the job

Utilizza il seguente comando se ricevi l'errore riportato sopra.

$ sudo dnf install docker-ce docker-ce-cli containerd.io --allowerasing

Abilita ed esegui il demone Docker.

$ sudo systemctl enable docker --now

Verificare che sia in esecuzione.

? docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
     Active: active (running) since Sat 2023-01-20 06:49:44 UTC; 6s ago
TriggeredBy: ? docker.socket
       Docs: https://docs.docker.com
   Main PID: 99263 (dockerd)
      Tasks: 8
     Memory: 28.1M
        CPU: 210ms
     CGroup: /system.slice/docker.service
             ??99263 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

Per impostazione predefinita, Docker richiede i privilegi di root. Se vuoi evitare di utilizzare sudo ogni volta che esegui il comando docker, aggiungi il tuo nome utente al gruppo docker.

$ sudo usermod -aG docker $(whoami)

Sarà necessario disconnettersi dal server e rientrare come lo stesso utente per abilitare questa modifica o utilizzare il comando seguente.

$ su - ${USER}

Conferma che il tuo utente sia aggiunto al gruppo Docker.

$ groups
navjot wheel docker

Passaggio 4: scarica il discorso

Clona il repository GitHub ufficiale di Discourse Docker nella directory /var/discourse.

$ sudo git clone https://github.com/discourse/discourse_docker.git /var/discourse

Passa alla directory Discorso.

$ cd /var/discourse

Rimuovi i permessi di scrittura ed eseguibili dalla directory containers.

$ sudo chmod 700 containers

Passaggio 5: configurare il discorso

Crea il file di configurazione app.yml copiando il file di esempio standalone.yml.

$ sudo cp samples/standalone.yml containers/app.yml

Apri app.yml per la modifica.

$ sudo nano containers/app.yml

Imposta dominio

Imposta la variabile DISCOURSE_HOSTNAME sul nome di dominio che hai scelto per il tuo forum. Se non disponi di un nome di dominio, puoi utilizzare un indirizzo IP qui.

DISCOURSE_HOSTNAME: 'discourse.example.com'

Configura le porte esposte

Cambia la riga "80:80 in "8080:80". Ciò cambierà la porta HTTP esterna per Discourse in 8080 poiché utilizzeremo Nginx sulla porta 80. Commenta la riga "443:443" poiché installeremo SSL esternamente.

expose:
  - "8080:80"   # http
  #- "443:443" # https

Configura gli ID email per l'amministratore

Imposta l'e-mail per il tuo account amministratore e lo sviluppatore utilizzando la variabile DISCOURSE_DEVELOPER_EMAILS. Questo passaggio è obbligatorio altrimenti il tuo forum non verrà avviato.

DISCOURSE_DEVELOPER_EMAILS: '[email ,[email '

Configura le impostazioni SMTP

Compila le seguenti variabili a seconda del servizio di posta elettronica transazionale che stai utilizzando.

DISCOURSE_SMTP_ADDRESS: smtp.example.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: [email 
DISCOURSE_SMTP_PASSWORD: your_smtp_password
#DISCOURSE_SMTP_ENABLE_START_TLS: true           # (optional, default true)
DISCOURSE_SMTP_DOMAIN: discourse.example.com    # (required by some providers)
DISCOURSE_NOTIFICATION_EMAIL: [email     # (address to send notifications from)

Impostazioni della memoria (opzionale)

Se il tuo server ha poca RAM, puoi configurare di conseguenza le seguenti variabili per ridurre l'impronta di memoria di Discourse.

db_shared_buffers: '128MB'
UNICORN_WORKERS: 2

La variabile db_shared_buffers è solitamente impostata al 25% della memoria disponibile.

Impostazioni GeoLite2 (opzionale)

Se desideri la funzionalità di ricerca IP su Discourse, registrati per l'account Maxmind Geolite2 gratuito e ottieni una chiave di licenza. Incolla la chiave di licenza come valore per la variabile seguente.

DISCOURSE_MAXMIND_LICENSE_KEY: your_maxmind_license_key

Salva il file premendo Ctrl + X e inserendo Y quando richiesto.

Passaggio 6: installare il discorso

Esegui il comando seguente per avviare il contenitore Discourse.

$ sudo ./launcher bootstrap app

Avvia l'applicazione Discorso.

$ sudo ./launcher start app

Aprire la porta per testare l'applicazione Discourse.

$ sudo firewall-cmd --permanent --add-port=8080/tcp

Ora puoi accedere al forum visitando gli URL http://yourserver_IP:8080 o http://discourse.example.com:8080 nel tuo browser. Otterrai la seguente schermata.

Passaggio 7: installare Nginx

Rocky Linux 9 viene fornito con una versione precedente di Nginx. È necessario scaricare il repository ufficiale Nginx per installare la versione più recente.

Crea e apri il file /etc/yum.repos.d/nginx.repo per creare il repository Nginx ufficiale.

$ sudo nano /etc/yum.repos.d/nginx.repo

Incolla il seguente codice al suo interno.

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

Salva il file premendo Ctrl + X e inserendo Y quando richiesto.

Installa il server Nginx.

$ sudo dnf install nginx

Verificare l'installazione.

$ nginx -v
nginx version: nginx/1.22.1

Abilita e avvia il server Nginx.

$ sudo systemctl enable nginx --now

Controlla lo stato del server.

$ sudo systemctl status nginx
? nginx.service - nginx - high performance web server
     Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled)
     Active: active (running) since Sun 2023-01-20 07:49:55 UTC; 1s ago
       Docs: http://nginx.org/en/docs/
    Process: 230797 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
   Main PID: 230798 (nginx)
      Tasks: 3 (limit: 12355)
     Memory: 2.8M
        CPU: 13ms
     CGroup: /system.slice/nginx.service
             ??230798 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
             ??230799 "nginx: worker process"
             ??230800 "nginx: worker process"

Passaggio 8: installare SSL

Per installare un certificato SSL utilizzando Let's Encrypt, dobbiamo installare lo strumento Certbot.

Per questo utilizzeremo il programma di installazione del pacchetto Snapd. Poiché Rocky Linux non viene fornito con esso, installa il programma di installazione Snapd. Per funzionare richiede l'archivio EPEL.

$ sudo dnf install epel-release

Installa Snapd.

$ sudo dnf install snapd

Abilita e avvia il servizio Snap.

$ sudo systemctl enable snapd --now

Installa il pacchetto Snap core e assicurati che la tua versione di Snapd sia aggiornata.

$ sudo snap install core && sudo snap refresh core

Crea i collegamenti necessari affinché Snapd funzioni.

$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh

Emettere il comando seguente per installare Certbot.

$ sudo snap install --classic certbot

Utilizzare il comando seguente per garantire che il comando Certbot possa essere eseguito creando un collegamento simbolico alla directory /usr/bin.

$ sudo ln -s /snap/bin/certbot /usr/bin/certbot

Verificare l'installazione.

$ certbot --version
certbot 1.32.2

Genera il certificato SSL.

$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email  -d discourse.example.com

Il comando precedente scaricherà un certificato nella directory /etc/letsencrypt/live/discourse.example.com sul tuo server.

Genera un certificato gruppo Diffie-Hellman.

$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096

Per verificare se il rinnovo SSL funziona correttamente, esegui un test del processo.

$ sudo certbot renew --dry-run

Se non vedi errori, è tutto a posto. Il tuo certificato si rinnoverà automaticamente.

Passaggio 9: configurare Nginx

Crea e apri il file /etc/nginx/conf.d/discourse.conf per la modifica.

$ sudo nano /etc/nginx/conf.d/discourse.conf

Incolla il seguente codice al suo interno.

# enforce HTTPS
server {
    listen       80; 
    listen 		[::]:80;
    server_name  discourse.example.com;
    location / { return 301 https://$host$request_uri; }
}
server {
    listen       443 ssl http2;
    listen 		[::]:443 ssl http2;
    server_name  discourse.example.com;

    access_log  /var/log/nginx/discourse.access.log;
    error_log   /var/log/nginx/discourse.error.log;
    
    # SSL
    ssl_certificate         /etc/letsencrypt/live/discourse.example.com/fullchain.pem;
    ssl_certificate_key     /etc/letsencrypt/live/discourse.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/discourse.example.com/chain.pem;
    ssl_session_timeout  5m;
    ssl_session_cache shared:SSL:10m;
    ssl_session_tickets off;
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
    ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;
    resolver 8.8.8.8;
    
    http2_push_preload on; # Enable HTTP/2 Server Push
    # Enable TLSv1.3's 0-RTT. Use $ssl_early_data when reverse proxying to
    # prevent replay attacks.
    #
    # @see: https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_early_data
    ssl_early_data on;
    
    # Security / XSS Mitigation Headers
    # NOTE: X-Frame-Options may cause issues with the webOS app
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Content-Type-Options "nosniff";
    add_header X-Early-Data $tls1_3_early_data;
    
    client_max_body_size 100m;
    
    location / {
        proxy_pass http://discourse.example.com:8080/;
        proxy_set_header Host $http_host;
        proxy_http_version 1.1;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Real-IP $remote_addr;
    }    
}

# This block is useful for debugging TLS v1.3. Please feel free to remove this
# and use the `$ssl_early_data` variable exposed by NGINX directly should you
# wish to do so.
map $ssl_early_data $tls1_3_early_data {
    "~." $ssl_early_data;
    default "";
}

Salva il file premendo Ctrl + X e inserendo Y quando richiesto una volta terminato.

Apri il file /etc/nginx/nginx.conf per modificarlo.

$ sudo nano /etc/nginx/nginx.conf

Aggiungi la seguente riga prima della riga include /etc/nginx/conf.d/*.conf;.

server_names_hash_bucket_size  64;

Salva il file premendo Ctrl + X e inserendo Y quando richiesto.

Verifica la sintassi del file di configurazione Nginx.

$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Riavviare il servizio Nginx per abilitare la nuova configurazione.

$ sudo systemctl restart nginx

Passaggio 10: accedere e completare l'installazione di Discourse

Puoi accedere al forum visitando l'URL https://discourse.example.com nel tuo browser. Otterrai la seguente schermata.

Fai clic sul pulsante Registrati per procedere. L'ID email impostato nel file app.yml sarà precompilato per te.

Fai clic sul pulsante Registra per registrare l'account amministratore. Passerai alla schermata di conferma dell'e-mail.

Se le tue impostazioni SMTP sono corrette, riceverai un'e-mail per attivare l'account. Fai clic sul collegamento contenuto nella tua email per completare la configurazione dell'account.

Fai clic sul pulsante Attiva per completare l'installazione.

Verrai indirizzato alla schermata di configurazione guidata del discorso. Inserisci il nome e la descrizione del forum e scegli la lingua. Fare clic sul pulsante Avanti per procedere.

Successivamente, verrai indirizzato alla pagina Esperienza membro. Scegli le opzioni in base alle tue esigenze e fai clic sul pulsante Avanti per procedere.

Successivamente, verrai indirizzato alla pagina di completamento della configurazione. Puoi scegliere di configurarne altri o semplicemente entrare e iniziare a utilizzare il forum. Queste impostazioni possono ancora essere configurate utilizzando le impostazioni dell'amministratore.

Sceglieremo Configura di più per il nostro tutorial. Verrai indirizzato alla pagina e ti verrà chiesto di impostare loghi e banner per il tuo forum. Fare clic sul pulsante Avanti per procedere.

Successivamente, ti verrà chiesto di impostare le opzioni di stile di base per il front-end del forum. Fare clic sul pulsante Avanti per procedere.

Successivamente, verrai indirizzato alla pagina di configurazione dell'organizzazione. Compila le informazioni appropriate.

Fai clic sul pulsante Salta! per procedere. Verrai indirizzato alla home del forum. Il tuo forum Discourse è pronto per l'uso.

Passaggio 11: comandi del discorso

Attiva l'amministratore del discorso dalla riga di comando

Se non ricevi l'e-mail di attivazione, puoi attivare l'account amministratore dalla riga di comando.

Passa alla directory Discorso.

$ cd /var/discourse

Inserisci la shell del contenitore Discorso.

$ sudo ./launcher enter app

Inserisci il comando rails c per accedere al prompt dei comandi di Rails.

root@discourse-app:/var/www/discourse# rails c

Verrà visualizzato il seguente messaggio.

[1] pry(main)> 

Immettere il comando per individuare l'account amministratore.

[1] pry(main)>  User.find_by_email("[email ")
=> #<User:0x00007fdf020229f0
 id: 1,
 username: "username",
 created_at: Fri, 20 Jan 2023 08:14:36.735552000 UTC +00:00,
 updated_at: Fri, 20 Jan 2023 14:14:12.094234000 UTC +00:00,
 name: nil,
 seen_notification_id: 4,
 last_posted_at: nil,
 password_hash: "98c774785bda45b4edbaea90eeb3bd5da00f65487ba6d0b3930082ce098bf174",
 salt: "ca175ea7f5653ce8122b76b68b549936",
 active: true,
 username_lower: "username",
 last_seen_at: Fri, 20 Jan 2023 23:01:21.001705000 UTC +00:00,
 admin: true,
 last_emailed_at: Fri, 20 Jan 2023 09:48:47.896200000 UTC +00:00,
 trust_level: 1,
 approved: false,
 approved_by_id: nil,
 approved_at: nil,
 previous_visit_at: Fri, 20 Jan 2023 21:28:23.665502000 UTC +00:00,
 suspended_at: nil,
 suspended_till: nil,
 date_of_birth: nil,
 views: 0,
 flag_level: 0,
 ip_address: #<IPAddr: IPv4:122.161.92.70/255.255.255.255>,
 moderator: false,
 title: nil,
 uploaded_avatar_id: nil,
 :

Inserisci q per tornare al prompt e inserisci i seguenti comandi in sequenza.

[2] pry(main)> user.approved = true
[3] pry(main)> user.save
[4] pry(main)> EmailToken.confirm(user.email_tokens.first.token)

Digita exit due volte per tornare alla shell. Il tuo account amministratore è attivato e pronto per l'uso.

Discorso di riserva

Per impostazione predefinita, Discourse esegue il backup del database ogni 7 giorni. Puoi trovare i file di backup nella directory `/var/discourse/shared/standalone/backups/default.

$ ls /var/discourse/shared/standalone/backups/default -al
total 1480
drwxr-xr-x. 2 navjot tape    4096 Jan 21 03:34 .
drwxr-xr-x. 3 navjot tape    4096 Jan 20 12:01 ..
-rw-r--r--. 1 navjot tape 1503748 Jan 21 03:34 howtoforge-forums-2023-01-21-033439-v20230119094939.tar.gz

Puoi configurare le impostazioni di backup visitando la sezione Amministrazione >> Impostazioni >> Backup. Discourse ti offre la possibilità di archiviare i backup localmente o in un archivio cloud in stile Amazon S3.

Puoi scaricare i backup dalla pagina Amministrazione >> Backup. Il ripristino è disabilitato per impostazione predefinita. Se desideri ripristinare il database, devi abilitare l'opzione consenti ripristino dalla sezione Ammin. >> Impostazioni >> Backup.

Discorso di aggiornamento

Per aggiornare il forum, puoi utilizzare uno dei due modi. Il primo modo è aggiornarlo tramite la dashboard dell'amministratore. Il secondo metodo consiste nell'utilizzare una riga di comando.

Passa alla directory Discorso.

$ cd /var/discourse

Aggiorna l'installazione di Discourse recuperando i file più recenti da GitHub.

$ git pull

Ricostruire il discorso.

$ sudo ./launcher rebuild app

Devi ricostruire Discourse ogni volta che apporti modifiche al file app.yml. Dopo aver apportato le modifiche, esegui il comando sopra. Distrugge il vecchio contenitore, ne avvia uno nuovo e lo avvia.

Interrompi il discorso

$ sudo ./launcher stop app

Visualizza i registri dei discorsi

$ sudo ./launcher logs app

Puoi anche visualizzare i laboratori dettagliati visitando l'URL https://discourse.example.com/logs/ nel tuo browser. Otterrai una schermata simile.

Rotaie/tronchi di unicorno

Ruby on Rails contiene un registro molto dettagliato che viene scritto su disco. Inoltre, anche il server web Unicorn registra su disco. Puoi visualizzarli nella directory var/discourse/shared/standalone/log/rails.

$ ls /var/discourse/shared/standalone/log/rails -al
total 552
drwxr-xr-x. 2 navjot tape   4096 Jan 20 07:09 .
drwxr-xr-x. 4 root   root   4096 Jan 20 07:09 ..
-rw-r--r--. 1 navjot tape      0 Jan 20 07:09 production_errors.log
-rw-r--r--. 1 navjot tape 361031 Jan 21 11:46 production.log
-rw-r--r--. 1 navjot tape      0 Jan 20 07:09 sidekiq.log
-rw-r--r--. 1 navjot tape  60919 Jan 20 08:42 unicorn.stderr.log
-rw-r--r--. 1 navjot tape 119403 Jan 21 03:34 unicorn.stdout.log

Registri Nginx

Discourse esegue un server Nginx all'interno di un contenitore docker. È possibile visualizzare i registri nel seguente percorso.

$ ls /var/discourse/shared/standalone/log/var-log/nginx -al
total 1852
drwxr-xr-x. 2   33 tape    4096 Jan 20 07:39 .
drwxrwxr-x. 5 root adm     4096 Jan 21 08:04 ..
-rw-r--r--. 1   33 tape 1878744 Jan 21 12:18 access.log
-rw-r--r--. 1   33 tape    1017 Jan 20 07:45 error.log

Registri Redis

Puoi ottenere i log per il server database Redis nel seguente percorso. Le voci di registro più recenti si troveranno nel file current.

$ ls /var/discourse/shared/standalone/log/var-log/redis -al
total 140
drwxr-xr-x. 2 root root   4096 Jan 20 07:39 .
drwxrwxr-x. 5 root adm    4096 Jan 21 08:04 ..
-rw-r--r--. 1 root root 127002 Jan 21 12:17 current
-rw-------. 1 root root      0 Jan 20 07:39 lock

Registri PostgreSQL

È possibile visualizzare i log del database PostgreSQL nel seguente percorso.

ls /var/discourse/shared/standalone/log/var-log/postgres -al
total 20
drwxr-xr-x. 2 root root  4096 Jan 20 07:39 .
drwxrwxr-x. 5 root adm   4096 Jan 21 08:04 ..
-rw-r--r--. 1 root root 11400 Jan 21 03:34 current
-rw-------. 1 root root     0 Jan 20 07:39 lock

Le voci più recenti si trovano nel file current in quella directory.

Il resto può essere trovato nello stesso /var/discourse/shared/standalone/log/var-log.

ls /var/discourse/shared/standalone/log/var-log -al
total 100
drwxrwxr-x. 5 root adm   4096 Jan 21 08:04 .
drwxr-xr-x. 4 root root  4096 Jan 20 07:09 ..
-rw-r--r--. 1 root adm  40943 Jan 21 12:17 auth.log
-rw-r--r--. 1 root adm      0 Jan 20 08:41 kern.log
-rw-r-----. 1 root adm    750 Jan 21 08:04 messages
drwxr-xr-x. 2   33 tape  4096 Jan 20 07:39 nginx
drwxr-xr-x. 2 root root  4096 Jan 20 07:39 postgres
drwxr-xr-x. 2 root root  4096 Jan 20 07:39 redis
-rw-r--r--. 1 root adm  23041 Jan 21 12:17 syslog
-rw-r-----. 1 root adm     70 Jan 21 08:04 user.log

Conclusione

Questo conclude il tutorial. Hai installato il forum Discourse utilizzando Docker dietro il server Web proxy Nginx su un server Rocky Linux 9. Se avete domande, pubblicatele nei commenti qui sotto.

Articoli correlati: