Android

Sådan installeres det vigtigste på centos 7

Sådan har Stofa Erhverv implementeret social selling (podcast)

Sådan har Stofa Erhverv implementeret social selling (podcast)

Indholdsfortegnelse:

Anonim

Mattermost er en open source, instant messaging platform, et selvhost Slack-alternativ. Det er skrevet i Golang og React og kan bruge MySQL eller PostgreSQL som en database backend. Mattermost bringer al din teamkommunikation ét sted og giver forskellige funktioner, herunder fildeling, en-til-en- og gruppemeddelelse, brugerdefinerede emoji, videoopkald og mere. I denne tutorial vil vi vise dig, hvordan du implementerer Mattermost på en CentOS 7-server og konfigurerer Nginx som en SSL-omvendt proxy.

Forudsætninger

Sørg for, at du har opfyldt følgende forudsætninger, før du fortsætter med denne tutorial:

  • Du er logget ind som bruger med sudo-privilegier. Du har et domænenavn, der peger til din server-IP-adresse. Vi bruger linuxize-test.com Du har Nginx installeret, hvis ikke tjek denne vejledning. Du har et SSL-certifikat installeret til dit domæne. Du kan installere et gratis Let's Encrypt SSL-certifikat ved at følge denne vejledning.

Opret MySQL-database

Vi bruger MariaDB 10.3 som en database back-end. Mattermost fungerer ikke med MariaDB version 5.5.

Login til MySQL-shell:

mysql -u root -p

Og kør følgende kommandoer for at oprette en ny database og bruger til vores Mattermost-installation:

create database mattermost; GRANT ALL ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'P4ssvv0rD';

Opret ny systembruger

For at oprette en ny bruger og gruppe, der hedder mattermost , som kører Mattermost-installationen, skal du køre følgende kommando:

sudo useradd -U -M -d /opt/mattermost mattermost

Installer Mattermost Server

På dette tidspunkt, hvor denne artikel skrives, er den seneste stabile version af Mattermost version 5.4.0. Før du fortsætter med det næste trin, skal du kontrollere Mattermost-downloadsiden for at se, om en nyere version er tilgængelig.

Download arkivet med følgende curl-kommando:

sudo curl -L https://releases.mattermost.com/5.4.0/mattermost-5.4.0-linux-amd64.tar.gz -o /tmp/mattermost.tar.gz

Når downloaden er afsluttet, trækker du arkivet ud og flytter det til opt biblioteket:

sudo tar zxf /tmp/mattermost.tar.gz -C /opt

Opret lagringsmappen til filer:

sudo mkdir /opt/mattermost/data

Skift katalogejerskab til den mattermost bruger:

sudo chown -R mattermost: /opt/mattermost

Åbn filen config.json med din foretrukne teksteditor:

sudo nano /opt/mattermost/config/config.json

Indstil databasedriveren til mysql , indtast databasenavnet og databasens brugeradgangskode, som vi oprettede tidligere i denne tutorial:

/opt/mattermost/config/config.json

… "SqlSettings": { "DriverName": "mysql", "DataSource": "mattermost:P4ssvv0rD@tcp(localhost:3306)/mattermost?charset=utf8mb4, utf8&readTimeout=30s&writeTimeout=30s", "DataSourceReplicas":,…

For at teste vores installation for at sikre, at alt fungerer, før vi opretter systemd enhed og opsætter en reverse proxy med Nginx, starter vi Mattermost-serveren.

Skift til mappen /opt/mattermost og start serveren:

cd /opt/mattermost sudo -u mattermost bin/mattermost

Outputet skal vise, at Mattermost-serveren lytter på 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."}

Du kan nu stoppe Mattermost-serveren med CTRL+C og fortsætte med de næste trin.

Opret en Systemd-enhed

For at køre vores Mattermost-forekomst som en service opretter vi en mattermost.service enhedsfil i /etc/systemd/system/ directory med følgende indhold:

/etc/systemd/system/mattermost.service

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

Underret systemd om, at vi oprettede en ny enhedsfil og start Mattermost-tjenesten ved at udføre:

sudo systemctl daemon-reload sudo systemctl start mattermost

Vi kan nu kontrollere servicestatus med følgende kommando:

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

Til sidst skal du aktivere Mattermost-tjenesten automatisk ved starttidspunktet:

sudo systemctl enable mattermost

Konfigurer en omvendt proxy med 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; } }

Genindlæs Nginx-tjenesten, så ændringerne træder i kraft:

sudo systemctl reload nginx

Konfiguration af Mattermost

Åbn din browser, skriv dit domæne og opret din første konto:

og indtast dine SMTP-parametre. Du kan bruge alle populære transaktionelle e-mail-tjenester såsom SendinBlue, SendGrid, Amazon SES, Mandrill, Mailgun, Mailjet og Postmark, eller du kan konfigurere din egen mailserver.

Endelig er vi nødt til at genstarte Mattermost-tjenesten for at ændringer kan træde i kraft:

sudo systemctl restart mattermost

Konklusion

Du har installeret Mattermost på din CentOS 7-server og konfigureret Nginx som en omvendt proxy. Du kan nu begynde at bruge Mattermost til at samarbejde med dit team.

vigtigste nodejs centos