Android

Paano mag-deploy ng pinakamahalaga sa ubuntu 18.04

Mattermost Installation Ubuntu 18 04 #mattermost

Mattermost Installation Ubuntu 18 04 #mattermost

Talaan ng mga Nilalaman:

Anonim

Ang pinakamahalaga ay isang grade ng enterprise, instant messaging platform, isang bukas na mapagkukunan na self-hosted na Slack alternatibo. Ito ay nakasulat sa Golang at React at maaaring gumamit ng MySQL o PostgreSQL bilang isang database ng pag-backend. Pinagsasama ng lahat ang iyong komunikasyon sa koponan sa isang lugar at nagbibigay ng iba't ibang mga tampok kabilang ang pagbabahagi ng file, isa-sa-isa at pagmemensahe ng grupo, pasadyang emojis, mga tawag sa video at marami pa.

Sa tutorial na ito, mai-install namin ang Mattermost sa isang server ng Ubuntu 18.04 at i-configure ang Nginx bilang isang SSL reverse proxy.

Mga kinakailangan

Tiyaking nakilala mo ang sumusunod na mga kinakailangan bago magpatuloy sa tutorial na ito:

  • Naka-log in ka bilang isang gumagamit na may mga pribilehiyo ng sudo.Mayroong isang domain name na tumuturo sa iyong IP address ng server. gagamitin namin ang example.com .Nag-install ka ng Nginx, kung hindi suriin ang gabay na ito.May isang naka-install na SSL certificate para sa iyong domain. Maaari kang mag-install ng isang libreng Let’s Encrypt SSL certificate sa pamamagitan ng pagsunod sa gabay na ito.

Lumikha ng MySQL Database

Gagamitin namin ang MySQL bilang isang database para sa Mattermost. Kung wala kang mai-install na MySQL o MariaDB sa iyong server maaari mo itong mai-install sa pamamagitan ng pagsunod sa mga tagubiling ito.

Mag-login sa shell ng MySQL:

mysql -u root

Lumikha ng isang bagong database at gumagamit para sa aming pag-install ng Mattermost na may:

CREATE DATABASE mattermost; GRANT ALL ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'P4ssvv0rD'; Siguraduhin na gumagamit ka ng isang password na mas ligtas kaysa sa P4ssvv0rD .

Lumikha ng bagong gumagamit ng system

Lumikha ng isang bagong gumagamit at pangkat na tatakbo sa aming Haltermost halimbawa. Kami ay pangalanan ang pinakamahalaga sa gumagamit:

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

I-install ang Mattermost Server

Sa panahon ng pagsulat ng artikulong ito, ang pinakabagong matatag na bersyon ng Mattermost ay bersyon 5.1.0. I-download ang archive gamit ang sumusunod na utos ng curl:

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

Kapag ang pag-download ay kumpleto na kunin ang archive at ilipat ito sa direktoryo /opt

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

Lumikha ng direktoryo ng imbakan para sa mga file:

sudo mkdir -p /opt/mattermost/data

Baguhin ang pagmamay-ari ng direktoryo sa mattermost gumagamit:

sudo chown -R mattermost: /opt/mattermost

Buksan ang /opt/mattermost/config/config.json file, itakda ang driver ng database sa mysql at ipasok ang impormasyon ng database:

/opt/mattermost/config/config.json

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

Upang matiyak na gumagana ang aming halimbawa ng Mattermost tulad ng inaasahan na susubukan namin ang Mattermost server. Baguhin ang direktoryo /opt/mattermost at simulan ang server gamit ang mga sumusunod na utos:

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

Kung ang lahat ay gumagana nang maayos, magsisimula ang server at ang hitsura ay magmukhang katulad nito:

{"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"}

Maaari na nating ihinto ang Mattermost server na may CTRL+C at magpatuloy sa susunod na mga hakbang.

Lumikha ng isang yunit ng Systemd

Upang patakbuhin ang aming Mattermost halimbawa bilang isang serbisyo ay gagawa kami ng isang file na mattermost.service unit sa /etc/systemd/system/ direktoryo.

Buksan ang iyong text editor at lumikha ng sumusunod na file:

/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

Ipaalam sa systemd na gumawa kami ng isang bagong unit file at simulan ang serbisyo ng Mattermost na may mga sumusunod na utos:

sudo systemctl daemon-reload sudo systemctl start mattermost

Maaari nating suriin ngayon ang katayuan ng serbisyo na may:

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

Kung walang mga pagkakamali, paganahin ang serbisyo ng Mattermost na awtomatikong magsimula sa oras ng pag-boot:

sudo systemctl enable mattermost

Mag-set up ng isang reverse proxy kasama si Nginx

Ngayon kailangan nating mag-set up ng isang bagong block ng server para sa pinakamahalagang halimbawa. Buksan ang iyong text editor at lumikha ng sumusunod na file:

/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; } }

Reload ang serbisyo ng Nginx para sa mga pagbabago na magkakabisa:

sudo systemctl reload nginx

Pag-configure ng Mahalaga

Buksan ang iyong browser, i-type ang iyong domain at mai-redirect ka sa pahina ng sugnup.

Ipasok ang iyong email, pumili ng isang username at password at mag-click sa pindutan ng Create Account upang lumikha ng iyong unang account.

Maaari kang gumamit ng anumang tanyag na mga serbisyo sa email na transactional tulad ng SendinBlue, SendGrid, Amazon SES, Mandrill, Mailgun, Mailjet, at Postmark o maaari mong mai-set up ang iyong sariling mail server sa pamamagitan ng pagsunod sa tutorial na ito.

Sa wakas kailangan nating i-restart ang serbisyo ng Mattermost para sa mga pagbabago na magkakabisa:

sudo systemctl restart mattermost

Konklusyon

Matagumpay mong na-install ang Mattermost sa iyong Ubuntu 18.04 server at pag-setup ng Nginx bilang isang reverse proxy. Maaari mo na ngayong simulan ang paggamit ng Mattermost upang makipagtulungan sa iyong koponan.

rocketchat nodejs ubuntu