Android

Paano mag-deploy ng pinakamahalaga sa sentimo 7

Installing iptables services on CentOS 7

Installing iptables services on CentOS 7

Talaan ng mga Nilalaman:

Anonim

Ang pinakamahalagang bagay ay isang bukas na mapagkukunan, instant messaging platform, isang self-host 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, ipapakita namin sa iyo kung paano i-deploy ang Mattermost sa isang server ng CentOS 7 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 linuxize-test.com -install ka ng Nginx, kung hindi suriin ang gabay na ito.May isang naka-install na sertipiko ng SSL 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 MariaDB 10.3 bilang isang back-end na database. Ang bagay ay hindi gagana sa bersyon ng MariaDB 5.5.

Mag-login sa shell ng MySQL:

mysql -u root -p

At patakbuhin ang mga sumusunod na utos upang lumikha ng isang bagong database at gumagamit para sa aming pag-install ng Mattermost:

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

Lumikha ng bagong gumagamit ng system

Upang lumikha ng isang bagong gumagamit at pangkat na pinangalanang mattermost , na tatakbo ang Mattermost install, patakbuhin ang sumusunod na utos:

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.4.0. Bago magpatuloy sa susunod na hakbang dapat mong suriin ang pahina ng pag-download ng Mattermost upang makita kung magagamit ang isang mas bagong bersyon.

I-download ang archive gamit ang sumusunod na utos ng curl:

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

Kapag nakumpleto na ang pag-download na i-extract ang archive at ilipat ito sa direktoryo ng opt :

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

Lumikha ng direktoryo ng imbakan para sa mga file:

sudo mkdir /opt/mattermost/data

Baguhin ang pagmamay-ari ng direktoryo sa mattermost gumagamit:

sudo chown -R mattermost: /opt/mattermost

Buksan ang file na config.json sa iyong paboritong text editor:

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

Itakda ang driver ng database sa mysql , ipasok ang pangalan ng database at password ng gumagamit ng database na nilikha namin nang mas maaga sa tutorial na ito:

/opt/mattermost/config/config.json

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

Upang masubukan ang aming pag-install upang matiyak na gumagana ang lahat bago lumikha ng systemd unit at magse-set up ng isang reverse proxy kasama si Nginx sisimulan namin ang Mattermost server.

Palitan ang direktoryo /opt/mattermost at simulan ang server:

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

Ang output ay dapat ipakita na ang Mattermost server ay nakikinig sa 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."}

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

Lumikha ng isang Systemd Unit

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

/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

Ipaalam sa systemd na gumawa kami ng isang bagong unit file at simulan ang serbisyo ng Mattermost sa pamamagitan ng pagpapatupad:

sudo systemctl daemon-reload sudo systemctl start mattermost

Maaari nating suriin ngayon ang katayuan ng serbisyo kasama ang sumusunod na utos:

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

Sa wakas, paganahin ang serbisyo ng Mattermost na awtomatikong magsimula sa oras ng boot:

sudo systemctl enable mattermost

Mag-set up ng isang Reverse Proxy sa 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; } }

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 lumikha ng iyong unang account:

at ipasok ang iyong mga parameter ng SMTP. 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 wakas, kailangan nating i-restart ang serbisyo ng Mattermost para magkaroon ng bisa ang mga pagbabago:

sudo systemctl restart mattermost

Konklusyon

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

pinakamahalagang nodejs sentimo