Recherche de site Web

Comment installer Discourse Forum avec Nginx sur Rocky Linux 9


Discourse est une plateforme de discussion communautaire open source construite en utilisant le langage Ruby. Il est conçu pour fonctionner comme un forum, un logiciel de chat ou une liste de diffusion. Il s'intègre facilement à d'autres plateformes et peut être étendu via des plugins.

Dans ce tutoriel, vous apprendrez comment installer Discourse Forum avec le serveur Nginx sur un serveur exécutant Rocky Linux 9.

Conditions préalables

    Un serveur exécutant Rocky Linux 9 avec un minimum de 1 Go de RAM et 1 processeur Core. La configuration de Discourse créera automatiquement une partition d'échange sur les systèmes dotés de 1 Go ou moins de RAM. Par conséquent, il est recommandé de l’installer sur un système doté d’au moins 2 Go de RAM.

    Un utilisateur non root avec les privilèges sudo.

    Un nom de domaine (discourse.example.com) pointant vers le serveur.

    Tout est mis à jour.

    $ sudo dnf update
    

    Peu de packages dont votre système a besoin.

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

    Certains de ces packages sont peut-être déjà installés sur votre système.

Étape 1 - Configurer le pare-feu

La première étape consiste à configurer le pare-feu. Rocky Linux utilise le pare-feu Firewalld. Vérifiez l'état du pare-feu.

$ sudo firewall-cmd --state
running

Le pare-feu fonctionne avec différentes zones et la zone publique est celle par défaut que nous utiliserons. Listez tous les services et ports actifs sur le pare-feu.

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

Il devrait afficher la sortie suivante.

cockpit dhcpv6-client ssh

Discourse a besoin de ports HTTP et HTTPS pour fonctionner. Ouvre les.

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

Ajoutez une mascarade, car l'application contactera d'autres instances.

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

Rechargez le pare-feu pour appliquer les modifications.

$ sudo firewall-cmd --reload

Répertoriez à nouveau tous les services.

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

Vous devriez obtenir le résultat suivant.

cockpit dhcpv6-client http https ssh

Configurer SELinux

Le discours ne sera pas accessible même si vous ouvrez les ports en raison de la politique d'accès de SELinux. Configurez SELinux pour autoriser les connexions réseau.

$ sudo setsebool -P httpd_can_network_connect 1

Étape 2 - Installer Git

Installez Git.

$ sudo dnf install git

Confirmez l'installation.

$ git --version
git version 2.31.1

Exécutez les commandes suivantes pour configurer l'installation de Git.

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

Étape 3 - Installer Docker

Rocky Linux est livré avec une ancienne version de Docker. Pour installer la dernière version, installez d’abord le référentiel Docker officiel.

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

Installez la dernière version de Docker.

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

Vous pouvez obtenir l’erreur suivante en essayant d’installer 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

Utilisez la commande suivante si vous obtenez l'erreur ci-dessus.

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

Activez et exécutez le démon Docker.

$ sudo systemctl enable docker --now

Vérifiez qu'il est en cours d'exécution.

? 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

Par défaut, Docker nécessite les privilèges root. Si vous souhaitez éviter d'utiliser sudo à chaque fois que vous exécutez la commande docker, ajoutez votre nom d'utilisateur au groupe docker.

$ sudo usermod -aG docker $(whoami)

Vous devrez vous déconnecter du serveur et vous reconnecter en tant que même utilisateur pour activer cette modification ou utiliser la commande suivante.

$ su - ${USER}

Confirmez que votre utilisateur est ajouté au groupe Docker.

$ groups
navjot wheel docker

Étape 4 - Télécharger le discours

Clonez le référentiel GitHub officiel de Discourse Docker dans le répertoire /var/discourse.

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

Basculez vers le répertoire Discourse.

$ cd /var/discourse

Supprimez les autorisations d'écriture et d'exécutable du répertoire containers.

$ sudo chmod 700 containers

Étape 5 - Configurer le discours

Créez le fichier de configuration app.yml en copiant l'exemple de fichier standalone.yml.

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

Ouvrez le app.yml pour le modifier.

$ sudo nano containers/app.yml

Définir le domaine

Définissez la variable DISCOURSE_HOSTNAME sur le nom de domaine que vous avez choisi pour votre forum. Si vous n'avez pas de nom de domaine, vous pouvez utiliser une adresse IP ici.

DISCOURSE_HOSTNAME: 'discourse.example.com'

Configurer les ports exposés

Remplacez la ligne "80:80 par "8080:80". Cela changera le port HTTP externe de Discourse en 8080 puisque nous utiliserons Nginx sur le port 80. la ligne "443:443" puisque nous installerons SSL en externe.

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

Configurer les identifiants de messagerie pour l'administrateur

Définissez l'e-mail de votre compte administrateur et du développeur à l'aide de la variable DISCOURSE_DEVELOPER_EMAILS. Cette étape est obligatoire sinon votre forum ne sera pas bootstrapé.

DISCOURSE_DEVELOPER_EMAILS: '[email ,[email '

Configurer les paramètres SMTP

Remplissez les variables suivantes en fonction du service de messagerie transactionnel que vous utilisez.

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)

Paramètres de mémoire (facultatif)

Si votre serveur dispose de peu de RAM, vous pouvez configurer les variables suivantes en conséquence pour réduire l'empreinte mémoire de Discourse.

db_shared_buffers: '128MB'
UNICORN_WORKERS: 2

La variable db_shared_buffers est généralement définie sur 25 % de la mémoire disponible.

Paramètres GeoLite2 (facultatif)

Si vous souhaitez bénéficier de la fonctionnalité de recherche IP sur Discourse, inscrivez-vous pour le compte gratuit Maxmind Geolite2 et obtenez une clé de licence. Collez cette clé de licence comme valeur pour la variable suivante.

DISCOURSE_MAXMIND_LICENSE_KEY: your_maxmind_license_key

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Étape 6 - Installer Discourse

Exécutez la commande suivante pour amorcer votre conteneur Discourse.

$ sudo ./launcher bootstrap app

Démarrez l’application Discours.

$ sudo ./launcher start app

Ouvrez le port pour tester l'application Discourse.

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

Vous pouvez désormais accéder au forum en visitant les URL http://yourserver_IP:8080 ou http://discourse.example.com:8080 dans votre navigateur. Vous obtiendrez l’écran suivant.

Étape 7 - Installer Nginx

Rocky Linux 9 est livré avec une ancienne version de Nginx. Vous devez télécharger le référentiel officiel Nginx pour installer la dernière version.

Créez et ouvrez le fichier /etc/yum.repos.d/nginx.repo pour créer le référentiel officiel Nginx.

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

Collez-y le code suivant.

[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

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Installez le serveur Nginx.

$ sudo dnf install nginx

Vérifiez l'installation.

$ nginx -v
nginx version: nginx/1.22.1

Activez et démarrez le serveur Nginx.

$ sudo systemctl enable nginx --now

Vérifiez l'état du serveur.

$ 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"

Étape 8 - Installer SSL

Pour installer un certificat SSL à l'aide de Let's Encrypt, nous devons installer l'outil Certbot.

Nous utiliserons le programme d'installation du package Snapd pour cela. Étant donné que Rocky Linux n'est pas livré avec, installez le programme d'installation Snapd. Cela nécessite le référentiel EPEL pour fonctionner.

$ sudo dnf install epel-release

Installez Snapd.

$ sudo dnf install snapd

Activez et démarrez le service Snap.

$ sudo systemctl enable snapd --now

Installez le package principal Snap et assurez-vous que votre version de Snapd est à jour.

$ sudo snap install core && sudo snap refresh core

Créez les liens nécessaires au fonctionnement de Snapd.

$ 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

Exécutez la commande suivante pour installer Certbot.

$ sudo snap install --classic certbot

Utilisez la commande suivante pour vous assurer que la commande Certbot peut être exécutée en créant un lien symbolique vers le répertoire /usr/bin.

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

Vérifiez l'installation.

$ certbot --version
certbot 1.32.2

Générez le certificat SSL.

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

La commande ci-dessus téléchargera un certificat dans le répertoire /etc/letsencrypt/live/discourse.example.com sur votre serveur.

Générez un certificat de groupe Diffie-Hellman.

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

Pour vérifier si le renouvellement SSL fonctionne correctement, effectuez un essai à sec du processus.

$ sudo certbot renew --dry-run

Si vous ne voyez aucune erreur, vous êtes prêt. Votre certificat se renouvellera automatiquement.

Étape 9 - Configurer Nginx

Créez et ouvrez le fichier /etc/nginx/conf.d/discourse.conf pour le modifier.

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

Collez-y le code suivant.

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

Enregistrez le fichier en appuyant sur Ctrl + X et en entrant Y lorsque vous y êtes invité une fois terminé.

Ouvrez le fichier /etc/nginx/nginx.conf pour le modifier.

$ sudo nano /etc/nginx/nginx.conf

Ajoutez la ligne suivante avant la ligne include /etc/nginx/conf.d/*.conf;.

server_names_hash_bucket_size  64;

Enregistrez le fichier en appuyant sur Ctrl + X et en saisissant Y lorsque vous y êtes invité.

Vérifiez la syntaxe du fichier de configuration 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

Redémarrez le service Nginx pour activer la nouvelle configuration.

$ sudo systemctl restart nginx

Étape 10 - Accéder et terminer l'installation de Discourse

Vous pouvez accéder au forum en visitant l'URL https://discourse.example.com dans votre navigateur. Vous obtiendrez l’écran suivant.

Cliquez sur le bouton S'inscrire pour continuer. L'identifiant de messagerie défini dans le fichier app.yml sera pré-rempli pour vous.

Cliquez sur le bouton Enregistrer pour enregistrer le compte administrateur. Vous passerez à l’écran de confirmation par courrier électronique.

Si vos paramètres SMTP sont corrects, vous recevrez un mail pour activer le compte. Cliquez sur le lien de votre e-mail pour terminer la configuration du compte.

Cliquez sur le bouton Activer pour terminer l'installation.

Vous arriverez à l’écran de l’assistant de configuration de Discourse. Remplissez le nom et la description de votre forum, puis choisissez la langue. Cliquez sur le bouton Suivant pour continuer.

Vous serez ensuite redirigé vers la page Expérience membre. Choisissez les options en fonction de vos besoins et cliquez sur le bouton Suivant pour continuer.

Ensuite, vous serez redirigé vers la page de fin de configuration. Vous pouvez soit choisir de configurer davantage, soit simplement y accéder et commencer à utiliser le forum. Ces paramètres peuvent toujours être configurés à l'aide des paramètres administrateur.

Nous choisirons Configurer davantage pour notre tutoriel. Vous serez redirigé vers la page et invité à définir des logos et une bannière pour votre forum. Cliquez sur le bouton Suivant pour continuer.

Ensuite, il vous sera demandé de définir les options de style de base pour le front-end du forum. Cliquez sur le bouton Suivant pour continuer.

Ensuite, vous serez redirigé vers la page de configuration de l'organisation. Remplissez les informations appropriées.

Cliquez sur le bouton Allez dedans ! pour continuer. Vous serez redirigé vers l'accueil du forum. Votre forum Discourse est prêt à être utilisé.

Étape 11 - Commandes discursives

Activer Discourse Administrator à partir de la ligne de commande

Si vous ne recevez pas l'e-mail d'activation, vous pouvez activer le compte administrateur depuis la ligne de commande.

Basculez vers le répertoire Discourse.

$ cd /var/discourse

Entrez dans le shell du conteneur Discourse.

$ sudo ./launcher enter app

Entrez la commande rails c pour accéder à l'invite de commande Rails.

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

Vous verrez l’invite suivante.

[1] pry(main)> 

Entrez la commande pour localiser le compte administrateur.

[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,
 :

Entrez q pour revenir à l'invite et entrez les commandes suivantes dans l'ordre.

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

Tapez exit deux fois pour revenir au shell. Votre compte administrateur est activé et prêt à être utilisé.

Discours de sauvegarde

Discourse sauvegarde la base de données tous les 7 jours par défaut. Vous pouvez trouver les fichiers de sauvegarde dans le répertoire `/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

Vous pouvez configurer les paramètres de sauvegarde en visitant la section Admin >> Paramètres >> Sauvegardes. Discourse vous offre la possibilité de stocker les sauvegardes localement ou sur un stockage cloud de style Amazon S3.

Vous pouvez télécharger les sauvegardes à partir de la page Admin >> Sauvegardes. La restauration est désactivée par défaut. Si vous souhaitez restaurer la base de données, vous devez activer l'option autoriser la restauration dans la section Admin >> Paramètres >> Sauvegardes.

Discours de mise à niveau

Pour mettre à niveau le forum, vous pouvez utiliser l'une des deux manières suivantes. La première consiste à le mettre à niveau via le tableau de bord de l'administrateur. La deuxième méthode consiste à utiliser une ligne de commande.

Basculez vers le répertoire Discourse.

$ cd /var/discourse

Mettez à jour l'installation de Discourse en récupérant les derniers fichiers de GitHub.

$ git pull

Reconstruire le discours.

$ sudo ./launcher rebuild app

Vous devez reconstruire Discourse chaque fois que vous apportez des modifications au fichier app.yml. Après avoir apporté les modifications, exécutez la commande ci-dessus. Il détruit l'ancien conteneur, en amorce un nouveau et le démarre.

Arrêter le discours

$ sudo ./launcher stop app

Afficher les journaux de discours

$ sudo ./launcher logs app

Vous pouvez également consulter les ateliers détaillés en visitant l'URL https://discourse.example.com/logs/ dans votre navigateur. Vous obtiendrez un écran similaire.

Rails/Bûches Licorne

Ruby on Rails contient un journal très détaillé écrit sur le disque. De plus, la licorne du serveur Web se connecte également sur le disque. Vous pouvez les consulter dans le répertoire 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

Journaux Nginx

Discourse exécute un serveur Nginx dans un conteneur Docker. Vous pouvez consulter les journaux à l'emplacement suivant.

$ 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

Journaux Redis

Vous pouvez obtenir les journaux du serveur de base de données Redis à l'emplacement suivant. Les entrées de journal les plus récentes seront dans le fichier 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

Journaux PostgreSQL

Vous pouvez afficher les journaux de la base de données PostgreSQL à l'emplacement suivant.

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

Les entrées les plus récentes se trouvent dans le fichier current de ce répertoire.

Le reste peut être trouvé dans le /var/discourse/shared/standalone/log/var-log lui-même.

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

Conclusion

Ceci conclut le didacticiel. Vous avez installé le forum Discourse à l'aide de Docker derrière le serveur Web proxy Nginx sur un serveur Rocky Linux 9. Si vous avez des questions, postez-les dans les commentaires ci-dessous.

Articles connexes: