Using bbb-install.sh to install BigBlueButton 2.0 in about 15 minutes
Table des matières:
- Conditions préalables
- Créer une base de données MySQL
- Créer un nouvel utilisateur système
- Installer le serveur Mattermost
- Créer une unité Systemd
- Configurer un proxy inverse avec Nginx
- Configuration de Mattermost
- Conclusion
Mattermost est une plate-forme de messagerie instantanée open source, une alternative Slack auto-hébergée. Il est écrit en Golang et React et peut utiliser MySQL ou PostgreSQL comme backend de base de données. Mattermost rassemble toutes les communications de votre équipe en un seul endroit et fournit diverses fonctionnalités, notamment le partage de fichiers, la messagerie individuelle et de groupe, les emojis personnalisés, les appels vidéo et plus encore. Dans ce didacticiel, nous vous montrerons comment déployer Mattermost sur un serveur CentOS 7 et configurer Nginx en tant que proxy inverse SSL.
Conditions préalables
Assurez-vous que vous avez rempli les conditions préalables suivantes avant de poursuivre ce didacticiel:
- Vous êtes connecté en tant qu'utilisateur avec les privilèges sudo. Vous avez un nom de domaine pointant vers l'adresse IP de votre serveur. Nous utiliserons
linuxize-test.com
Vous avez Nginx installé, sinon consultez ce guide. Vous avez un certificat SSL installé pour votre domaine. Vous pouvez installer un certificat SSL Let's Encrypt gratuit en suivant ce guide.
Créer une base de données MySQL
Nous utiliserons MariaDB 10.3 comme back-end de base de données. Mattermost ne fonctionnera pas avec MariaDB version 5.5.
Connectez-vous au shell MySQL:
mysql -u root -p
Et exécutez les commandes suivantes pour créer une nouvelle base de données et un nouvel utilisateur pour notre installation Mattermost:
create database mattermost;
GRANT ALL ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'P4ssvv0rD';
Créer un nouvel utilisateur système
Pour créer un nouvel utilisateur et groupe nommé
mattermost
, qui exécutera l'installation Mattermost, exécutez la commande suivante:
sudo useradd -U -M -d /opt/mattermost mattermost
Installer le serveur Mattermost
Au moment de la rédaction de cet article, la dernière version stable de Mattermost est la version 5.4.0. Avant de passer à l'étape suivante, vous devriez vérifier la page de téléchargement de Mattermost pour voir si une version plus récente est disponible.
Téléchargez l'archive avec la commande curl suivante:
sudo curl -L https://releases.mattermost.com/5.4.0/mattermost-5.4.0-linux-amd64.tar.gz -o /tmp/mattermost.tar.gz
Une fois le téléchargement terminé, extrayez l'archive et déplacez-la dans le répertoire
opt
:
sudo tar zxf /tmp/mattermost.tar.gz -C /opt
Créez le répertoire de stockage des fichiers:
sudo mkdir /opt/mattermost/data
Changez la propriété de l'annuaire pour l'utilisateur le plus important:
sudo chown -R mattermost: /opt/mattermost
Ouvrez le fichier
config.json
avec votre éditeur de texte préféré:
sudo nano /opt/mattermost/config/config.json
Définissez le pilote de base de données sur
mysql
, entrez le nom de la base de données et le mot de passe de l'utilisateur de la base de données que nous avons créés précédemment dans ce didacticiel:
… "SqlSettings": { "DriverName": "mysql", "DataSource": "mattermost:P4ssvv0rD@tcp(localhost:3306)/mattermost?charset=utf8mb4, utf8&readTimeout=30s&writeTimeout=30s", "DataSourceReplicas":,…
Afin de tester notre installation pour vous assurer que tout fonctionne avant de créer l'unité systemd et de configurer un proxy inverse avec Nginx, nous allons démarrer le serveur Mattermost.
Accédez au répertoire
/opt/mattermost
et démarrez le serveur:
cd /opt/mattermost
sudo -u mattermost bin/mattermost
La sortie doit montrer que le serveur Mattermost écoute sur le port
8065
:
{"level":"info", "ts":1540921243.6797202, "caller":"app/plugin.go:100", "msg":"Starting up plugins"} {"level":"info", "ts":1540921244.3483207, "caller":"app/server.go:88", "msg":"Starting Server…"} {"level":"info", "ts":1540921244.3488805, "caller":"app/server.go:148", "msg":"Server is listening on:8065"} {"level":"info", "ts":1540921244.3620636, "caller":"app/web_hub.go:75", "msg":"Starting 2 websocket hubs"} {"level":"info", "ts":1540921244.451155, "caller":"jobs/workers.go:63", "msg":"Starting workers"} {"level":"info", "ts":1540921244.456804, "caller":"jobs/schedulers.go:68", "msg":"Starting schedulers."}
Vous pouvez maintenant arrêter le serveur Mattermost avec
CTRL+C
et passer aux étapes suivantes.
Créer une unité Systemd
Afin d'exécuter notre instance Mattermost en tant que service, nous allons créer un fichier d'unité
mattermost.service
dans le répertoire
/etc/systemd/system/
avec le contenu suivant:
Description=Mattermost After=network.target nss-lookup.target mariadb.service Type=notify WorkingDirectory=/opt/mattermost User=mattermost SyslogIdentifier=mattermost ExecStart=/opt/mattermost/bin/mattermost TimeoutStartSec=3600 LimitNOFILE=49152 WantedBy=multi-user.target
Informez systemd que nous avons créé un nouveau fichier d'unité et démarrez le service Mattermost en exécutant:
sudo systemctl daemon-reload
sudo systemctl start mattermost
Nous pouvons maintenant vérifier l'état du service avec la commande suivante:
sudo systemctl status mattermost
● mattermost.service - Mattermost Loaded: loaded (/etc/systemd/system/mattermost.service; disabled; vendor preset: disabled) Active: active (running) since Tue 2018-10-30 17:44:46 UTC; 3s ago Main PID: 25959 (mattermost) CGroup: /system.slice/mattermost.service └─25959 /opt/mattermost/bin/mattermost
Enfin, activez le service Mattermost pour qu'il démarre automatiquement au démarrage:
sudo systemctl enable mattermost
Configurer un proxy inverse avec Nginx
/etc/nginx/conf.d/linuxize-test.com.conf
proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off; upstream mattermost_backend { server 127.0.0.1:8065; } server { listen 80; server_name linuxize-test.com www.linuxize-test.com; include snippets/letsencrypt.conf; return 301 https://linuxize-test.com$request_uri; } server { listen 443 ssl http2; server_name www.linuxize-test.com; ssl_certificate /etc/letsencrypt/live/linuxize-test.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/linuxize-test.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/linuxize-test.com/chain.pem; include snippets/ssl.conf; return 301 https://linuxize-test.com$request_uri; } server { listen 443 ssl http2; server_name linuxize-test.com; ssl_certificate /etc/letsencrypt/live/linuxize-test.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/linuxize-test.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/linuxize-test.com/chain.pem; include snippets/ssl.conf; access_log /var/log/nginx/linuxize-test.com-access.log; error_log /var/log/nginx/linuxize-test.com-error.log; location ~ /api/v+/(users/)?websocket$ { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; client_max_body_size 50M; 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_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_pass http://mattermost_backend; } location / { proxy_http_version 1.1; client_max_body_size 50M; proxy_set_header Connection ""; 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_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_cache mattermost_cache; proxy_cache_revalidate on; proxy_cache_min_uses 2; proxy_cache_use_stale timeout; proxy_cache_lock on; proxy_pass http://mattermost_backend; } }
Rechargez le service Nginx pour que les modifications prennent effet:
Configuration de Mattermost
Ouvrez votre navigateur, saisissez votre domaine et créez votre premier compte:
et entrez vos paramètres SMTP. Vous pouvez utiliser tous les services de messagerie transactionnelle populaires tels que SendinBlue, SendGrid, Amazon SES, Mandrill, Mailgun, Mailjet et Postmark ou vous pouvez configurer votre propre serveur de messagerie.
Enfin, nous devons redémarrer le service Mattermost pour que les modifications prennent effet:
sudo systemctl restart mattermost
Conclusion
Vous avez correctement installé Mattermost sur votre serveur CentOS 7 et configuré Nginx en tant que proxy inverse. Vous pouvez maintenant commencer à utiliser Mattermost pour collaborer avec votre équipe.
plus important nodejs centosComment déployer Odoo 11 sur Ubuntu 18.04
Ce guide couvre les étapes nécessaires pour installer et configurer Odoo pour la production en utilisant la source Git et l'environnement virtuel Python sur un système Ubuntu 18.04.
Comment déployer Rocket.chat sur Centos 7
Dans ce didacticiel, nous vous montrerons comment installer et déployer Rocket.Chat sur un serveur CentOS 7 avec Nginx comme proxy inverse SSL. Rocket.Chat est une plateforme de communication d'équipe complète, une alternative Slack auto-hébergée.
Comment déployer le plus important sur Ubuntu 18.04
Mattermost rassemble toutes vos communications d'équipe en un seul endroit et offre diverses fonctionnalités, notamment le partage de fichiers, la messagerie individuelle et de groupe, les emojis personnalisés, les appels vidéo et plus encore.