GNU/Linux >> Tutoriels Linux >  >> Cent OS

Installer Mattermost avec PostgreSQL et Nginx sur CentOS 7

Mattermost est une alternative à Slack open source et auto-hébergée. Le plus important est une communication moderne derrière votre pare-feu.

En tant qu'alternative à la messagerie SaaS propriétaire, Mattermost rassemble toutes les communications de votre équipe en un seul endroit, ce qui les rend consultables et accessibles partout.

Mattermost est "compatible avec Slack, pas limité à Slack", prenant en charge un sur-ensemble d'intégrations de webhook entrants et sortants de Slack, y compris la compatibilité avec les intégrations Slack existantes. À partir de vos équipes Slack existantes, vous pouvez importer des utilisateurs, l'historique des canaux publics et même des couleurs de paramétrage de thème dans Mattermost.

Noms, variables et comptes utilisés dans ce guide

local IP of server                 : 192.168.2.100
FQDN of server : mattermost.example.com
Name of mattermost database : mattermost
User to access mattermost database : mmuser
Password for mmuser within database: DBAss47slX3

Prérequis

Ce guide explique l'installation de Mattermost sur CentOS7 en utilisant PostgreSQL comme backend de base de données. Pour les besoins de ce guide, nous supposerons que nous installons tout sur un seul serveur, mais pour les utilisateurs expérimentés, il serait facile de démonter les pièces et d'installer chaque composant (par exemple, le serveur de base de données) sur une machine différente. L'installation a été effectuée avec l'utilisateur root mais vous pouvez, bien sûr, utiliser un utilisateur activé sudo , aussi.

Nous supposons également que le serveur a une adresse IP de 192.168.2.100 et que le DNS se résout en mattermost.example.com . Donc, n'importe où dans ce guide où vous lisez 192.168.2.100 ou mattermost.example.com remplacez-la par l'adresse IP de votre serveur.

Avant de pouvoir commencer, vous avez besoin d'une installation minimale de CentOS7. Après l'installation, assurez-vous d'avoir correctement configuré la messagerie (configuration postfixée), afin que votre système puisse envoyer des e-mails (par exemple, via un hôte intelligent ou une solution similaire).

Veuillez faire quelques petites vérifications avant de continuer :

Essayez d'envoyer un mail depuis un terminal sur votre serveur :

[[email protected] ~]echo -en "Subject: Testmail\n\nThis is a test\n" | sendmail [email protected]

(remplacez [email protected] par une adresse e-mail à laquelle votre serveur devrait pouvoir envoyer). Assurez-vous que vous avez bien reçu un e-mail du système !

Vérifier la résolution du nom pour mattermost.example.com

À partir d'un autre ordinateur (pas le serveur que nous essayons de configurer), essayez d'envoyer un ping à mattermost.example.com. Vous devriez obtenir un résultat positif :

C:\>ping mattermost.example.com
Pinging mattermost.witron.com [192.168.2.100] with 32 bytes of data:
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64
Reply from 192.168.2.100: bytes=32 time<1ms TTL=64

Ping statistics for 192.168.2.100:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms

Vérifier la connectivité Internet

Nous allons maintenant installer le package wget (dont nous aurons besoin plus tard).

[[email protected] ~] yum -y install wget

et utilisez-le pour déterminer notre adresse IP publique. Nous pouvons donc vérifier notre connectivité Internet.

[[email protected] ~] wget http://ipinfo.io/ip -qO -
46.101.122.124

Le résultat devrait être votre adresse IP publique.

Vérifiez l'état du pare-feu et désactivez-le pour l'instant

Veuillez vérifier si votre installation CentOS7 dispose d'un pare-feu activé. Vous pouvez le vérifier en tapant

[[email protected] ~] systemctl status firewalld

S'il affiche quelque chose comme

Actif :actif (en cours d'exécution) depuis ...

veuillez l'éteindre et le désactiver avec ces 2 commandes.

[[email protected] ~] systemctl stop firewalld
[[email protected] ~] systemctl disable firewalld

À la fin de ce didacticiel, vous trouverez des instructions pour réactiver le pare-feu et le configurer correctement pour qu'il fonctionne avec Mattermost.

Si vous réussissez toutes les vérifications ci-dessus ou si vous savez que vous disposez d'un système utilisable pour ce didacticiel, vous pouvez continuer maintenant.

Installer le serveur de base de données PostgreSQL

Nous utiliserons PostgreSQL comme backend de base de données pour Mattermost. Installez-le avec la commande suivante :

[[email protected] ~] yum -y install postgresql-server postgresql-contrib

Après l'installation, nous devons initialiser la base de données.

[[email protected] ~] postgresql-setup initdb
Initializing database ... OK

Ensuite, démarrez PostgreSQL et activez-le pour un démarrage automatique.

[[email protected] ~]# systemctl start postgresql
[[email protected] ~]# systemctl enable postgresql
Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql.service to /usr/lib/systemd/system/postgresql.service.

Veuillez vérifier que PostgreSQL est en cours d'exécution en exécutant.

[[email protected] ~]# systemctl status postgresql

Il devrait signaler quelque chose de similaire à ceci (assurez-vous qu'il y a Actif :actif (en cours d'exécution) quelque part dans le texte).

? postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2016-03-04 11:37:50 CET; 44s ago
Main PID: 17660 (postgres)
CGroup: /system.slice/postgresql.service
??17660 /usr/bin/postgres -D /var/lib/pgsql/data -p 5432
??17661 postgres: logger process
??17663 postgres: checkpointer process
??17664 postgres: writer process
??17665 postgres: wal writer process
??17666 postgres: autovacuum launcher process
??17667 postgres: stats collector process

Mar 04 11:37:48 mattermost systemd[1]: Starting PostgreSQL database server...
Mar 04 11:37:50 mattermost systemd[1]: Started PostgreSQL database server.
Mar 04 11:37:59 mattermost systemd[1]: Started PostgreSQL database server.

Créer la base de données et l'utilisateur de base de données importants

PostgreSQL a créé automatiquement un utilisateur et un groupe avec le nom postgres . Nous utilisons l'utilisateur postgres pour se connecter au moteur de base de données et configurer une base de données et un utilisateur pouvant y accéder.

Démarrer une invite en tant qu'utilisateur postgres :

[[email protected] ~]# sudo -i -u postgres

Votre invite va maintenant changer pour :

-bash-4.2$

Connectons-nous maintenant au serveur de base de données.

-bash-4.2$ psql
psql (9.2.15)
Type "help" for help.
postgres=#

Dans l'invite PostgreSQL, nous créons maintenant une base de données avec le nom "mattermost".

postgres=# CREATE DATABASE mattermost;
CREATE DATABASE

Maintenant, nous créons un utilisateur 'mmuser ' avec le mot de passe 'DBAss47slX 3'.

postgres=# CREATE USER mmuser WITH PASSWORD 'DBAss47slX3';
CREATE ROLE

Accordez à l'utilisateur l'accès à la base de données Mattermost en saisissant :

postgres=# GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;
GRANT
postgres=#

Nous pouvons alors quitter l'invite PostgreSQL en tapant :

postgres=# \q
-bash-4.2$

Et puis quittez le shell que nous avons démarré en tant qu'utilisateur 'postgres ' avec.

-bash-4.2$ exit
logout
[[email protected] ~]#

Autoriser l'accès à la base de données PostgreSQL depuis localhost via nom d'utilisateur/mot de passe

Plus tard, notre instance la plus importante aimerait parler à la base de données PostgreSQL et s'authentifier avec un nom d'utilisateur et un mot de passe. Pour permettre cela, nous devons légèrement modifier la configuration de PostgreSQL. Ouvrez le fichier :

vi /var/lib/pgsql/data/pg_hba.conf

avec un éditeur comme vi ou nano et changez la ligne :

host    all             all             127.0.0.1/32            ident

à :

host    all             all             127.0.0.1/32            md5

Enregistrez le fichier, puis redémarrez Postgresql.

[[email protected] ~]# systemctl restart postgresql

Nous devons vérifier que nous l'avons fait correctement en nous connectant au serveur de base de données avec notre utilisateur et notre mot de passe créés précédemment (utilisez votre mot de passe si vous en avez utilisé un autre sur votre serveur) :

[[email protected] ~]# psql --host=127.0.0.1 --dbname=mattermost --username=mmuser --password
Password for user mmuser:
psql (9.2.15)
Type "help" for help.

mattermost=> \q
[[email protected] ~]#

Notre serveur et notre base de données PostgreSQL sont maintenant prêts pour Mattermost !

Télécharger et extraire Mattermost

Téléchargeons une copie du serveur Mattermost directement depuis leur référentiel Github (au moment de la création de ce tutoriel, la version v2.0.0 était la version actuelle) en utilisant wget.

[[email protected] ~]# cd
[[email protected] ~]# wget -q "https://github.com/mattermost/platform/releases/download/v2.0.0/mattermost.tar.gz" -O mattermost.tar.gz

Extrayons maintenant l'archive et plaçons les fichiers extraits à leur emplacement cible (dans ce cas, nous utilisons /opt/mattermost).

[[email protected] ~]# tar -xvzf mattermost.tar.gz
[[email protected] ~]# mv mattermost /opt


Installation de Mattermost

Créer un utilisateur qui exécute le démon Mattermost

Nous exécuterons plus tard Mattermost en tant que démon. Par conséquent, nous configurons un nouvel utilisateur sur notre système avec le nom 'mattermost '. Il exécutera l'instance la plus importante plus tard. Exécutez la commande suivante pour créer un utilisateur système et un groupe 'mattermost ' :

[[email protected] ~]# useradd -r mattermost -U -s /sbin/nologin

Créer un dossier de stockage de données pour Mattermost

Mattermost souhaite stocker certaines de ses données, par exemple. fichiers téléchargés, etc. dans un dossier. Nous devons donc créer ce dossier. Il peut être n'importe où sur le disque dur mais doit être accessible par l'utilisateur 'important '. J'ai choisi d'utiliser '/opt/mattermost/data'. Créez le dossier avec la commande suivante :

[[email protected] ~]# mkdir -p /opt/mattermost/data

Définir le propriétaire du répertoire le plus important

Maintenant, nous définissons le groupe et le propriétaire du répertoire le plus important sur notre utilisateur et notre groupe créés précédemment :

[[email protected] ~]# chown -R mattermost:mattermost /opt/mattermost
[[email protected] ~]# chmod -R g+w /opt/mattermost

Configurer la connexion à la base de données pour le plus important

Pour indiquer à Mattermost comment il doit se connecter à notre base de données PostgreSQL, nous devons modifier son fichier de configuration :

/opt/mattermost/config/config.json

Veuillez trouver la section 'SqlSettings ' et adaptez-le à nos besoins :

AVANT

"SqlSettings": {
"DriverName": "mysql",
"DataSource": "mmuser:[email protected](dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8",
"DataSourceReplicas": [],
"MaxIdleConns": 10,
"MaxOpenConns": 10,
"Trace": false,
"AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QVg"
},

APRÈS

"SqlSettings": {
"DriverName": "postgres",
"DataSource": "postgres://mmuser:[email protected]:5432/mattermost?sslmode=disable&connect_timeout=10",
"DataSourceReplicas": [],
"MaxIdleConns": 10,
"MaxOpenConns": 10,
"Trace": false,
"AtRestEncryptKey": "7rAh6iwQCkV4cA1Gsg3fgGOXJAQ43QVg"
},

Vous pouvez laisser la AtRestEncryptKey tel quel !

Configurer la connectivité des e-mails pour le plus important

Encore une fois, nous devons modifier son fichier de configuration

/opt/mattermost/config/config.json

Recherchez la section "EmailSettings" et modifiez-la selon vos besoins :

AVANT

 "EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": false,
"SendEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "",
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "",
"SMTPPort": "",
"ConnectionSecurity": "",
"InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS",
"PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL",
"SendPushNotifications": false,
"PushNotificationServer":
},

APRÈS

 "EmailSettings": {
"EnableSignUpWithEmail": true,
"EnableSignInWithEmail": true,
"EnableSignInWithUsername": false,
"SendEmailNotifications": false,
"RequireEmailVerification": false,
"FeedbackName": "",
"FeedbackEmail": "",
"SMTPUsername": "",
"SMTPPassword": "",
"SMTPServer": "127.0.0.1",
"SMTPPort": "25",
"ConnectionSecurity": "",
"InviteSalt": "bjlSR4QqkXFBr7TP4oDzlfZmcNuH9YoS",
"PasswordResetSalt": "vZ4DcKyVVRlKHHJpexcuXzojkE5PZ5eL",
"SendPushNotifications": false,
"PushNotificationServer": ""
},

Nous utilisons 127.0.0.1 et port 25 parce que nous utilisons notre installation locale de postfix qui est déjà configurée pour pouvoir envoyer des e-mails à l'extérieur. Si votre configuration diffère ici, vous devez définir les valeurs correctes !

Configurer Mattermost pour n'écouter que sur l'interface interne (127.0.0.1)

Par défaut, l'instance de serveur la plus importante écoutera sur toutes les interfaces sur le port 8065 (:8065). Parce que nous voulons mettre un Nginx-Server devant le plus important, nous modifions ce comportement afin qu'il n'écoute que sur localhost (127.0.0.1:8065).

Changez simplement la ligne

        "ListenAddress": ":8065",

à

        "ListenAddress": "127.0.0.1:8065",

dans le fichier config.json.

Tester le serveur Mattermost

Nous pouvons maintenant tester si notre serveur le plus important démarrerait en l'exécutant à partir de la ligne de commande. Veuillez vous assurer que vous faites cela en tant qu'utilisateur "important". Si vous l'avez accidentellement fait en tant que "root", vous devez à nouveau corriger les autorisations pour le dossier le plus important !

[[email protected] ~]# su - mattermost -s /bin/bash

Last login: Fri Mar 4 12:47:52 CET 2016 on pts/0
su: warning: cannot change directory to /home/mattermost: No such file or directory
-bash-4.2$

Passez maintenant au répertoire d'installation le plus important :

-bash-4.2$ cd /opt/mattermost/bin/

Et exécutez le plus important à partir de la ligne de commande :

-bash-4.2$ ./platform

Le résultat devrait ressembler à ceci :

[2016/03/04 13:00:10 CET] [INFO] Loaded system translations for 'en' from '/opt/mattermost/i18n/en.json'
[2016/03/04 13:00:10 CET] [INFO] Current version is 2.0.0 (5950/Sat Feb 13 15:42:01 UTC 2016/c71c5cef632c7dc68072167c6fe091a60835fa02)
[2016/03/04 13:00:10 CET] [INFO] Enterprise Enabled: false
[2016/03/04 13:00:10 CET] [INFO] Current working directory is /opt/mattermost/bin
[2016/03/04 13:00:10 CET] [INFO] Loaded config file from /opt/mattermost/config/config.json
[2016/03/04 13:00:10 CET] [INFO] Server is initializing...
[2016/03/04 13:00:10 CET] [INFO] Pinging sql master database
[2016/03/04 13:00:10 CET] [INFO] Pinging sql replica-0 database
[2016/03/04 13:00:10 CET] [DEBG] Deleting any unused pre-release features
[2016/03/04 13:00:10 CET] [INFO] The database schema has been set to version 2.0.0
[2016/03/04 13:00:10 CET] [DEBG] Initializing user api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing team api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing channel api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing post api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing web socket api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing file api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing command api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing admin api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing oauth api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing webhook api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing preference api routes
[2016/03/04 13:00:10 CET] [DEBG] Initializing license api routes
[2016/03/04 13:00:10 CET] [DEBG] Parsing server templates at /opt/mattermost/api/templates/
[2016/03/04 13:00:10 CET] [DEBG] Initializing web routes
[2016/03/04 13:00:10 CET] [DEBG] Using static directory at /opt/mattermost/web/static/
[2016/03/04 13:00:10 CET] [DEBG] Parsing templates at /opt/mattermost/web/templates/
[2016/03/04 13:00:10 CET] [INFO] Starting Server...
[2016/03/04 13:00:10 CET] [INFO] Server is listening on 127.0.0.1:8065
[2016/03/04 13:00:10 CET] [INFO] RateLimiter is enabled
[2016/03/04 13:00:10 CET] [DEBG] Checking for security update from Mattermost
[2016/03/04 13:00:10 CET] [EROR] Failed to get security update information from Mattermost.

Arrêtez le serveur le plus important avec Ctrl+C

puis quittez le shell que nous avons démarré en tant qu'utilisateur "mattermost" avec :

-bash-4.2$ exit
logout
[[email protected] ~]#

Si votre instance la plus importante ne démarre pas, lisez attentivement la sortie. J'ai moi-même eu beaucoup de problèmes car j'ai oublié une simple virgule dans config.json. Assurez-vous également de ne pas utiliser de caractères spéciaux dans le mot de passe de votre dbuser, en particulier pas de '@ ' signe. Ça m'a rendu bizarre au début !

Si vous avez accidentellement exécuté la commande ci-dessus en tant que 'root ' et cela pourrait également fonctionner, vous devez refixer les autorisations pour le dossier le plus important. Utilisez cette commande si vous avez rencontré cette erreur :

[[email protected] ~]# chown -R mattermost:mattermost /opt/mattermost

Si tout s'est bien passé, nous pouvons maintenant continuer.

Configurer Mattermost en tant que démon

Pour configurer Mattermost en tant que démon, créez un fichier

/etc/systemd/system/mattermost.service

avec le contenu suivant :

[Unit]
Description=Mattermost
After=syslog.target network.target

[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid

[Install]
WantedBy=multi-user.target

Rechargez ensuite les fichiers du démon avec :

[[email protected] ~]# systemctl daemon-reload

Nous pouvons maintenant démarrer/arrêter/activer/désactiver ce service comme nous avons l'habitude de le faire.

Démarrons donc Mattermost, obtenons son statut, puis activons-le en tant que service (démarrage automatique).

Démarrer le démon le plus important

[[email protected] ~]# systemctl start mattermost.service

Vérifier le statut le plus important

[[email protected] ~]# systemctl status mattermost.service
? mattermost.service - Mattermost
Loaded: loaded (/etc/systemd/system/mattermost.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2016-03-04 14:03:40 CET; 4s ago
Main PID: 18573 (platform)
CGroup: /system.slice/mattermost.service
??18573 /opt/mattermost/bin/platform
...
...

Assurez-vous qu'il est actif (en cours d'exécution) !

Activer le démon pour le démarrage automatique

[[email protected] ~]# systemctl enable mattermost.service
Created symlink from /etc/systemd/system/multi-user.target.wants/mattermost.service to /etc/systemd/system/mattermost.service.

Maintenant, pour être sûr, nous testons si Mattermost écoute sur 127.0.0.1:8065 en exécutant la commande suivante :

[[email protected] config]# curl -s "http://127.0.0.1:8065" | grep -b "2015 Mattermost"

Nous devrions obtenir une seule ligne contenant "2015 Mattermost".

11343:        <span class="pull-right footer-link copyright">© 2015 Mattermost, Inc.</span>

Si tel est le cas, nous pouvons être sûrs que l'instance du serveur Mattermost est en cours d'exécution et nous pouvons continuer.


Résoudre les problèmes d'autorisation liés à SELinux

Sur CentOS7, SELinux est activé par défaut. Nous pourrions le désactiver entièrement, mais il est préférable de le reconfigurer et de permettre à notre serveur Mattermost de s'exécuter.

Entrez simplement les 2 commandes suivantes pour corriger les autorisations SELinux :

[[email protected] config]# chcon -Rt httpd_sys_content_t /opt/mattermost/
[[email protected] config]# setsebool -P httpd_can_network_connect 1

Configurer le serveur Nginx

Nous placerons un serveur Nginx devant notre instance de serveur Mattermost.

Les principaux avantages sont :

  • Mappage des ports :80 à :8065
  • Journaux de requêtes standard
  • plus d'options lors du passage ultérieur à SSL

Activer epel-repository

Nginx n'est pas dans les référentiels par défaut de CentOS. Nous devons donc d'abord activer le référentiel epel. C'est une tâche facile, il suffit d'entrer :

[[email protected] config]# yum -y install epel-release && yum update

Installer nginx

Après avoir activé la version epel, nous pouvons simplement installer nginx avec la commande suivante :

[[email protected] config]# yum -y install nginx

Cela installera nginx et toutes ses dépendances.

Configurer nginx

Il existe de nombreuses façons de configurer Nginx. Ce tutoriel montrera simplement comment créer une configuration très simple pour Nginx qui héberge simplement notre serveur Mattermost sur le port 80.

Modifier le fichier de configuration par défaut de Nginx

Créer une sauvegarde du nginx.conf actuel en exécutant :

[[email protected] config]# cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak

Remplacez ensuite /etc/nginx/nginx.conf avec ce contenu :

# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
# * Official Russian Documentation: http://nginx.org/ru/docs/

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;

events {
worker_connections 1024;
}

http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

access_log /var/log/nginx/access.log main;

sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;

include /etc/nginx/mime.types;
default_type application/octet-stream;

# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;

server {
server_name mattermost.example.com;
location / {
client_max_body_size 50M;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Frame-Options SAMEORIGIN;
proxy_pass http://127.0.0.1:8065;
}
}
}

Assurez-vous d'utiliser le nom d'hôte correct, comme indiqué précédemment dans ce document.

Pour vérifier que nous n'avons pas d'erreurs de syntaxe dans nos fichiers de configuration, exécutez la commande suivante pour vérifier la syntaxe :

[[email protected] config]# nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Démarrer et activer Nginx en tant que démon

Démarrer Nginx

[[email protected] config]# systemctl start nginx

Vérifier l'état

[[email protected] config]# systemctl status nginx

Assurez-vous qu'il affiche au moins une ligne indiquant :

...
Active: active (running)...
...

Activer en tant que démon

[[email protected] config]# systemctl enable nginx
Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service.

Si tout s'est bien passé, vous devriez maintenant avoir une installation Mattermost fonctionnelle fonctionnant derrière Nginx. Vérifiez-le en ouvrant l'URL suivante dans votre navigateur :

http://mattermost.example.com

L'écran de connexion Mattermost devrait apparaître !

Vous pouvez maintenant continuer à configurer votre installation Mattermost en saisissant votre adresse e-mail et en créant un compte.

Pare-feud

Plus tôt dans ce tutoriel, nous avons désactivé firewalld. Si vous souhaitez le réactiver mais que vous souhaitez garder le port 80 ouvert (que nous utilisons actuellement pour Mattermost via Nginx), procédez comme suit :

Démarrer et réactiver Firewalld

[[email protected] config]# systemctl start firewalld
[[email protected] config]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/basic.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.

Ouvrir le port 80 dans le pare-feu

[[email protected] config]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
[[email protected] config]# firewall-cmd --reload
success

Maintenant, votre installation Mattermost devrait être accessible, même Firewalld est en cours d'exécution !

Résumé

J'espère que vous avez trouvé ce tutoriel utile et qu'il a fonctionné. Dans un environnement de production, vous devez créer/utiliser des certificats pour votre site Web Mattermost et activer https via Nginx. Ceci peut être facilement accompli en modifiant légèrement ce Howto.


Cent OS
  1. Comment installer Nginx sur CentOS 8

  2. Installez Nginx avec ngx_pagespeed sur CentOS 7

  3. Comment installer et configurer Postgres 13 sur Centos 8

  4. Comment installer Varnish et phpMyAdmin sur un VPS CentOS 7 avec Nginx, MariaDB et PHP-FPM

  5. Installez Magento sur CentOS 7, avec Nginx, PHP-FPM et MariaDB

Comment installer Jenkins Automation Server avec Nginx sur CentOS 7

Installation et configuration de PhpMyAdmin avec Nginx sur CentOS 7

Installez Nginx sur CentOS 7 / RHEL 7

Comment installer Nginx sur CentOS

Comment installer OwnCloud 8 avec Nginx et PHP-FPM sur CentOS 6

Comment installer Nginx sur CentOS 6