Giới thiệu Mattermost

Mattermost là giải pháp phần mềm thay thế cho các doanh nghiệp vừa và nhỏ có nhu cầu sử dụng các giải pháp trao đổi nội bộ.
Một lựa chọn khá tốt cho việc thay thế các công cụ chat mà các công ty đang sử dụng vì giao diện và tính năng của Mattermost giống như Slack.
Hỗ trợ cả app cài đặt trên điện thoại và các thiết bị di động đó cũng là một trong những lợi thế mà Mattermost mang đến trải nghiệm hoàn toàn thoải mái cho người dùng. Việc di chuyển sang Mattermost từ các ứng dụng chat trước đó không tốn quá nhiều thời gian vì giao diện hoạt động và thao tác hoàn toàn quen thuộc.
Mattermost cũng là một công cụ trong bộ giải pháp Work From Home mà Cloud365 đã ra mắt cho người sử dụng, dưới đay chúng tôi sẽ hướng dẫn các bạn triển khai Mattermost trên server riêng của chính bạn.
Chuẩn bị
Chuẩn bị một server có cấu hình tối thiểu như sau:
- 1 CPU
- 1 GB RAM
- 10 GB Disk
- CentOS 7
- Tài khoản root
Update OS
| yum -y install epel-release && yum update -y |
Disable Firewalld & SElinux & ipv6
| systemctl stop firewalld systemctl disable firewalld sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/sysconfig/selinux sed -i ‘s/SELINUX=permissive/SELINUX=disabled/g’ /etc/sysconfig/selinux echo “net.ipv6.conf.all.disable_ipv6 = 1” >> /etc/sysctl.conf echo “net.ipv6.conf.default.disable_ipv6 = 1” >> /etc/sysctl.conf sysctl -p init 6 |
Cài đặt Database MySQL
| wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm sudo yum localinstall mysql57-community-release-el7-9.noarch.rpm sudo yum install mysql-community-server -y |
Start MySQL
| sudo systemctl start mysqld.service |
Lấy password tạm thời sau khi cài đặt
| sudo grep ‘temporary password’ /var/log/mysqld.log |
Cấu hình cho phép cấu hình mật khẩu đơn giản(Có thể bỏ qua)
| echo “validate_password_policy=LOW” >> /etc/my.cnf systemctl restart mysqld |
Genera password mới
| openssl rand -hex 16 |
Đăng nhập vào mysql
| mysql -u root -p |
Đổi mật khẩu root được gen ở bước trên
| ALTER USER ‘root’@’localhost’ IDENTIFIED BY ‘c4082afca3c1b6d358d’; FLUSH PRIVILEGES; |
Create Database cho mattermost
| create user ‘mmuser’@’localhost’ identified by ‘c4082afca3c1b6d358d’; create database mattermost; grant all privileges on mattermost.* to ‘mmuser’@’localhost’; FLUSH PRIVILEGES; exit |
Cấu hình cho phép mysql khởi động cùng OS
| sudo systemctl enable mysqld |
Cài đặt Mattermost
Download source code của Mattermost về
| cd wget https://releases.mattermost.com/5.21.0/mattermost-5.21.0-linux-amd64.tar.gz -O mattermost.tar.gz |
Giải nén
| tar -zxvf mattermost.tar.gz |
Chuyển source code vào /opt
| sudo mv mattermost /opt |
Tạo folder để lưu các file dữ liệu
| sudo mkdir -p /opt/mattermost/data |
Khởi tạo các user và group phân quyền cho phép hoạt động
| sudo useradd –system –user-group mattermost sudo chown -R mattermost:mattermost /opt/mattermost sudo chmod -R g+w /opt/mattermost |
Cấu hình Database /opt/mattermost/config/config.json
Cấu hình “SiteURL“
| “SiteURL” = “https://mattermost.example.com” Hoặc “SiteURL” = “http:10.10.30.192” |
Cấu hình “DriverName” thành “mysql”
Cấu hình “DataSource” <mmuser-password> <host-name-or-IP> các thông tin user đã khởi tạo phía trên
| “DataSource” = “mmuser:<mmuser-password>@tcp(<host-name-or-IP>:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s” |
Kiểm tra hoạt động của các cấu hình
| cd /opt/mattermost sudo -u mattermost ./bin/mattermost |

Như phía trên là đã kết nối đến Database và cấu hình thành công bấm CTRL + C để thoát chế độ trên
Cấu hình để Mattermost chạy ở chế độ Deamon
| touch /etc/systemd/system/mattermost.service cat <> /etc/systemd/system/mattermost.service [Unit] Description=Mattermost After=syslog.target network.target postgresql-9.4.service [Service] Type=notify WorkingDirectory=/opt/mattermost User=mattermost ExecStart=/opt/mattermost/bin/mattermost PIDFile=/var/spool/mattermost/pid/master.pid TimeoutStartSec=3600 LimitNOFILE=49152 [Install] WantedBy=multi-user.target EOF |
Phân quyền
| sudo chmod 664 /etc/systemd/system/mattermost.service |
Reload service
| sudo systemctl daemon-reload |
Cho phép Mattermost khởi động cùng OS
| sudo systemctl enable mattermost |
Start Mattermost
| sudo systemctl start mattermost |
Kiểm tra
| http://10.10.30.192:8065 |

Tài khoản ban đầu sẽ là tài khoản Admin có quyền vào setup hệ thống
Cloud365
Cài đặt Nginx
Để chạy Mattermost dưới port 80 thay vì 8065 như trên chúng ta có thể sử dụng Nginx làm Proxy để forward gói tin
| yum install nginx -y |
Bổ sung cấu hình
| vi /etc/nginx/conf.d/mattermost.conf |
Nội dung
| upstream backend { server 10.10.30.192:8065; keepalive 32; } proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off; server { listen 80; server_name 10.10.30.192; location ~ /api/v[0-9]+/(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; client_body_timeout 60; send_timeout 300; lingering_timeout 5; proxy_connect_timeout 90; proxy_send_timeout 300; proxy_read_timeout 90s; proxy_pass http://backend; } location / { 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_http_version 1.1; proxy_pass http://backend; } } |
Kiểm tra config
| nginx -t |
Truy cập bằng http://10.10.30.192

Khi cần hỗ trợ xin liên hệ với chúng tôi:
Công ty phần mềm Nhân Hòa
- Trụ sở Hà Nội: 32 Võ Văn Dũng, Đống Đa, Hà Nội
- Chi nhánh HCM: 270 Cao Thắng (nối dài), Phường 12,Quận 10, TP HCM
- Hotline: 19006680
Leave a Reply