Sådan har Stofa Erhverv implementeret social selling (podcast)
Indholdsfortegnelse:
- Forudsætninger
- Opret MySQL-database
- Opret ny systembruger
- Installer Mattermost Server
- Opret en Systemd-enhed
- Konfigurer en omvendt proxy med Nginx
- Konfiguration af Mattermost
- Konklusion
Mattermost er en enterprise grade, instant messaging platform, et open source, 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 installere Mattermost på en Ubuntu 18.04-server og konfigurere 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
example.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 MySQL som en database til Mattermost. Hvis du ikke har MySQL eller MariaDB installeret på din server, kan du installere det ved at følge disse instruktioner.
Login til MySQL-shell:
mysql -u root
Opret en ny database og bruger til vores Mattermost-installation med:
CREATE DATABASE mattermost;
GRANT ALL ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'P4ssvv0rD';
Sørg for, at du bruger en adgangskode, der er mere sikker end
P4ssvv0rD
.
Opret ny systembruger
Opret en ny bruger og gruppe, der kører vores Mattermost-instans. Vi vil navngive brugeren
mattermost
:
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.1.0. Download arkivet med følgende curl-kommando:
sudo curl -L https://releases.mattermost.com/5.1.0/mattermost-5.1.0-linux-amd64.tar.gz -o /tmp/mattermost.tar.gz
Når overførslen er afsluttet, skal du arkivere arkivet og flytte det til
/opt
biblioteket
sudo tar zxf /tmp/mattermost.tar.gz -C /opt
Opret lagringsmappen til filer:
sudo mkdir -p /opt/mattermost/data
Skift katalogejerskab til den
mattermost
bruger:
sudo chown -R mattermost: /opt/mattermost
Åbn filen
/opt/mattermost/config/config.json
, indstil database driveren til
mysql
og indtast databaseinformationen:
"SqlSettings": { "DriverName": "mysql", "DataSource": "mattermost:P4ssvv0rD@tcp(localhost:3306)/mattermost?charset=utf8mb4, utf8&readTimeout=30s&writeTimeout=30s",
For at sikre, at vores Mattermost-instans fungerer som forventet, tester vi Mattermost-serveren. Skift til mappen
/opt/mattermost
og start serveren med følgende kommandoer:
cd /opt/mattermost
sudo -u mattermost bin/mattermost
Hvis alt fungerer godt, starter serveren, og output ser sådan ud:
{"level":"info", "ts":1532546921.941638, "caller":"app/server.go:115", "msg":"Starting Server…"} {"level":"info", "ts":1532546921.9421031, "caller":"app/server.go:154", "msg":"Server is listening on:8065"} {"level":"info", "ts":1532546921.9541554, "caller":"app/web_hub.go:75", "msg":"Starting 2 websocket hubs"}
Vi 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.
Åbn din teksteditor og opret følgende fil:
/etc/systemd/system/mattermost.service
Description=Mattermost After=network.target After=mysql.service Requires=mysql.service Type=notify ExecStart=/opt/mattermost/bin/mattermost TimeoutStartSec=3600 Restart=always RestartSec=10 WorkingDirectory=/opt/mattermost User=mattermost Group=mattermost LimitNOFILE=49152 WantedBy=mysql.service
Underret systemd om, at vi har oprettet en ny enhedsfil, og start Mattermost-tjenesten med følgende kommandoer:
sudo systemctl daemon-reload
sudo systemctl start mattermost
Vi kan nu kontrollere servicestatusen med:
sudo systemctl status mattermost
● mattermost.service - Mattermost Loaded: loaded (/etc/systemd/system/mattermost.service; disabled; ven Active: active (running) since Wed 2018-07-25 18:39:05 UTC; 41s ago Main PID: 3091 (mattermost) Tasks: 18 (limit: 507) CGroup: /system.slice/mattermost.service ├─3091 /opt/mattermost/bin/mattermost
Hvis der ikke er nogen fejl, skal du aktivere Mattermost-tjenesten automatisk ved starttidspunktet:
sudo systemctl enable mattermost
Konfigurer en omvendt proxy med Nginx
Nu skal vi opsætte en ny serverblok til Mattermost-forekomsten. Åbn din teksteditor og opret følgende fil:
/etc/nginx/conf.d/example.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 example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.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:
Konfiguration af Mattermost
Åbn din browser, skriv dit domæne, og du vil blive omdirigeret til sugnup-siden.
Indtast din e-mail, vælg et brugernavn og adgangskode, og klik på knappen
Create Account
at oprette din første konto.
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 ved at følge denne tutorial.
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 Ubuntu 18.04-server og konfigureret Nginx som en omvendt proxy. Du kan nu begynde at bruge Mattermost til at samarbejde med dit team.
rocketchat nodejs ubuntuSådan implementeres odoo 11 på ubuntu 18.04
Denne vejledning dækker de nødvendige trin til installation og konfiguration af Odoo til produktion ved hjælp af Git source og Python virtuelle miljø på et Ubuntu 18.04-system.
Sådan implementeres odoo 12 på ubuntu 18.04
Denne tutorial dækker de trin, der kræves til installation og konfiguration af Odoo 12 til produktion ved hjælp af Git source og Python virtuelle miljø på et Ubuntu 18.04-system.
Sådan implementeres rocket.chat på ubuntu 18.04
Rocket.Chat er en open source-kommunikationsplatform, et selvhost Slack-alternativ. Rocket.Chat er en perfekt løsning for virksomheder og lokalsamfund, der ønsker at være vært for deres eget chat-system.