Cách cài đặt Mattermost trên Alma Linux 8

theanh

Administrator
Nhân viên
Mattermost là má»™t nền tảng miá»…n phÃ, mã nguồn mở và an toÃn để giao tiếp, cá»™ng tác và điều phối quy trình lÃm việc trên nhiều công cụ và nhóm. Đây là dịch vụ trò chuyện tá»± lưu trữ được thiết kế cho các tổ chức và công ty để triển khai dịch vụ trò chuyện ná»™i bá»™. Nó cung cấp má»™t số tÃnh năng hữu Ãch bao gồm nhắn tin má»™t-má»™t, lịch sá» tìm kiếm không giá»›i hạn, chia sẻ tệp, xác thá»±c hai yếu tố, thông báo, v.v. Nếu bạn Ä‘ang tìm kiếm má»™t giải pháp thay thế cho Slack thì Mattermost là lá»±a chọn tốt nhất dÃnh cho bạn.

Trong hướng dẫn nÃy, chúng tôi sẽ chỉ cho bạn cách cÃi đặt Mattermost vá»›i Nginx trên Alma Linux 8.

Điều kiện tiên quyết​

  • Má»™t máy chá»§ Ä‘ang chạy Alma Linux 8.
  • Má»™t tên miền hợp lệ được trỏ bằng IP máy chá»§ cá»§a bạn.
  • Má»™t máºt khẩu gốc được cấu hình trên máy chá»§.

CÃi đặt MySQL Server​

Mattermost sá» dụng MySQL lÃm cÆ¡ sở dữ liệu phụ trợ. Vì váºy, MySQL phải được cÃi đặt trên máy chá»§ cá»§a bạn. Bạn có thể cÃi đặt bằng cách chạy lệnh sau:
Mã:
dnf install mysql-server -y
Sau khi máy chá»§ MySQL được cÃi đặt, hãy khởi động và kÃch hoạt dịch vụ MySQL bằng lệnh sau:
Mã:
systemctl start mysqld
systemctl enable mysqld
Bây giờ, bạn có thể bảo máºt cÃi đặt MySQL bằng cách chạy táºp lệnh sau:
Mã:
mysql_secure_installation
Trả lời tất cả các câu hỏi như được hiển thị bên dưới để đặt máºt khẩu gốc MySQL và bảo máºt cÃi đặt:
Mã:
Nhấn y|Y để chọn Yes, any other key cho Không: NVui lòng đặt máºt khẩu cho root tại đây.Máºt khẩu má»›i:Nháºp lại máºt khẩu má»›i:Xóa người dùng ẩn danh? (Nhấn y|Y để Có, bất kỳ phÃm nÃo khác để Không): YKhông cho phép root đăng nháºp từ xa? (Nhấn y|Y để Có, bất kỳ phÃm nÃo khác để Không): YXóa cÆ¡ sở dữ liệu thá» nghiệm và quyền truy cáºp vÃo cÆ¡ sở dữ liệu đó? (Nhấn y|Y để Có, bất kỳ phÃm nÃo khác để Không): YTải lại bảng đặc quyền ngay bây giờ? (Nhấn y|Y để Có, bất kỳ phÃm nÃo khác để Không): Y

Tạo cÆ¡ sở dữ liệu cho Mattermost​

Tiếp theo, bạn sẽ cần tạo cÆ¡ sở dữ liệu và người dùng cho Mattermost. Trước tiên, hãy đăng nháºp vÃo MySQL bằng lệnh sau:
Mã:
mysql -u root -p
Sau khi đăng nháºp, hãy tạo cÆ¡ sở dữ liệu và người dùng bằng lệnh sau:
Mã:
mysql> TáºO CÆ SỞ Dá»® LIỆU matterdb;
mysql> TáºO NGƯỜI DÙNG 'matteruser'@'localhost' ĐƯỢC XÁC ĐỊNH BẰNG 'password';
Tiếp theo, cấp tất cả các quyền cho cơ sở dữ liệu Mattermost:
Mã:
mysql> CẤP TẤT CẢ CÁC QUYỀN TRÊN matterdb.* CHO matteruser@localhost;
Tiếp theo, xóa các quyền và thoát khỏi MySQL bằng lệnh sau:
Mã:
mysql> XÓA CÁC QUYỀN;
mysql> EXIT;
Sau khi hoÃn tất, bạn có thể tiến hÃnh bước tiếp theo.

CÃi đặt Mattermost trên Alma Linux 8​

Trước tiên, hãy tạo một người dùng chuyên dụng để chạy Mattermost bằng lệnh sau:
Mã:
useradd --system --user-group mattermost
Tiếp theo, hãy tải xuống phiên bản Mattermost mới nhất bằng lệnh sau:
Mã:
wget https://releases.mattermost.com/6.0.2/mattermost-6.0.2-linux-amd64.tar.gz
Sau khi tải xuống hoÃn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
tar -xf mattermost-6.0.2-linux-amd64.tar.gz
Tiếp theo, hãy di chuyển thư mục đã giải nén đến /opt:
Mã:
mv mattermost /opt
Tiếp theo, tạo một thư mục dữ liệu cho Mattermost và thay đổi quyền sở hữu và quyền cấp phép của Mattermost:
Mã:
mkdir /opt/mattermost/data
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
Tiếp theo, chỉnh sá»a tệp cấu hình Mattermost:
Mã:
nano /opt/mattermost/config/config.json
Xác định URL trang web Mattermost của bạn như hiển thị bên dưới:
Mã:
"SiteURL": "http://mattermost.example.com",
Tiếp theo, tìm các dòng sau:
Mã:
"DriverName": "postgres", "DataSource": "postgres://mmuser:mostest@localhost/mattermost_test?sslmode=disable\u0026connect_timeout=10",
Và thay thế chúng bằng các dòng sau:
Mã:
"DriverName": "mysql", "DataSource": "matteruser:password@tcp(localhost:3306)/matterdb?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
Lưu và đóng tệp khi bạn hoÃn tất.

Tạo tệp dịch vụ Systemd cho Mattermost​

Tiếp theo, bạn sẽ cần tạo tệp dịch vụ systemd để quản lý dịch vụ Mattermost. Bạn có thể tạo nó bằng cách chạy lệnh sau:
Mã:
nano /etc/systemd/system/mattermost.service
Thêm các dòng sau:
Mã:
[Unit]Description=MattermostAfter=syslog.target network.target mysqld.service[Service]Type=notifyWorkingDirectory=/opt/mattermostUser=mattermostExecStart=/opt/mattermost/bin/mattermostPIDFile=/var/spool/mattermost/pid/master.pidTimeoutStartSec=3600LimitNOFILE=49152[Install]WantedBy=multi-user.target
Lưu và đóng tệp, sau đó tải lại daemon systemd bằng lệnh sau:
Mã:
systemctl daemon-reload
Tiếp theo, khởi động dịch vụ Mattermost và cho phép dịch vụ nÃy khởi động khi khởi động lại hệ thống:
Mã:
systemctl start mattermost
systemctl enable mattermost
Bây giờ bạn có thể kiểm tra trạng thái của dịch vụ Mattermost bằng lệnh sau:
Mã:
systemctl status mattermost
Bạn sẽ nháºn được kết quả đầu ra sau:
Mã:
? mattermost.service - Mattermost Đã tải: đã tải (/etc/systemd/system/mattermost.service; đã tắt; cÃi đặt trước cá»§a nhà cung cấp: đã tắt) Đang hoạt động: Ä‘ang hoạt động (Ä‘ang chạy) kể từ Thứ bảy 2022-01-15 14:12:29 UTC; 7 giây trước PID chÃnh: 15201 (mattermost) Nhiệm vụ: 32 (giá»›i hạn: 11411) Bá»™ nhá»›: 265,2M CGroup: /system.slice/mattermost.service ??15201 /opt/mattermost/bin/mattermost ??15298 plugins/com.mattermost.plugin-channel-export/server/dist/plugin-linux-amd64 ??15299 plugins/com.mattermost.nps/server/dist/plugin-linux-amd64 ??15308 plugins/playbooks/server/dist/plugin-linux-amd64 ??15313 plugins/focalboard/server/dist/plugin-linux-amd6415 tháng 1 14:12:26 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:26.344 Z","level":"info","msg":"Đã gá»i thông báo về cuá»™c khảo sát tiếp theo>15 tháng 1 14:12:26 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:26.402 Z","level":"info","msg":"Post.Message has size restrictedio>15 tháng 1 14:12:26 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:26.499 Z","level":"info","msg":"info [2022-01-15 14:12:26.497 Z]>15 tháng 1 14:12:26 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:26.537 Z","level":"info","msg":"\n -- đối chiếu mattermost>15 tháng 1 14:12:28 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:28.297 Z","level":"info","msg":"debug [2022-01-15 14:12:28.295 Z>15 tháng 1 14:12:28 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:28.804 Z","level":"info","msg":"info [2022-01-15 14:12:28.803 Z]>15 tháng 1 14:12:29 almalinux8 systemd[1]: Đã bắt đầu Mattermost.15 tháng 1 14:12:29 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:29.149 Z","level":"info","msg":"Đang khởi động máy chá»§...","caller":"ap>15 tháng 1 14:12:29 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:29.150 Z","level":"info","msg":"Máy chá»§ Ä‘ang lắng nghe trên [::]:8065>15 tháng 1 14:12:29 almalinux8 mattermost[15201]: {"timestamp":"2022-01-15 14:12:29.150 Z","level":"info","msg":"Sending systemd READY notificati>
Lúc nÃy, Mattermost đã được khởi động và chạy trên cổng 8065. Bạn có thể kiểm tra bằng lệnh sau:
Mã:
ss -antpl | grep 8065
Bạn sẽ nháºn được kết quả đầu ra sau:
Mã:
LISTEN 0 128 *:8065 *:* users:(("mattermost",pid=15201,fd=35))
Sau khi hoÃn tất, bạn có thể tiến hÃnh bước tiếp theo.

Cấu hình Nginx lÃm Proxy ngược cho Mattermost​

Bạn nên cÃi đặt và cấu hình Nginx lÃm proxy ngược cho Mattermost. Để thá»±c hiện, bạn sẽ cần cÃi đặt máy chá»§ Nginx vÃo máy chá»§ cá»§a mình. Bạn có thể cÃi đặt bằng cách chạy lệnh sau:
Mã:
dnf install nginx -y
Sau khi Nginx đã được cÃi đặt, hãy tạo tệp cấu hình máy chá»§ ảo Nginx bằng lệnh sau:
Mã:
nano /etc/nginx/conf.d/mattermost.conf
Thêm các dòng sau:
Mã:
server { listen 80; server_name mattermost.example.com; # Tải các tệp cấu hình cho khối máy chủ mặc định. include /etc/nginx/default.d/*.conf; location / { proxy_pass http://localhost:8065/; chỉ mục index.html index.htm; } trang lỗi 404 /404.html; vị trà = /40x.html { } trang lỗi 500 502 503 504 /50x.html; location = /50x.html { } }
Lưu và đóng tệp, sau đó kiểm tra Nginx xem có lá»—i cấu hình nÃo không:
Mã:
nginx -t
Nếu mọi thứ ổn, bạn sẽ nháºn được kết quả sau:
Mã:
nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là oknginx: kiểm tra tệp cấu hình /etc/nginx/nginx.conf thÃnh công
Bây giờ, hãy khởi động và báºt dịch vụ Nginx để bắt đầu khi khởi động lại hệ thống:
Mã:
systemctl start nginx
systemctl enable nginx
Bạn có thể kiểm tra trạng thái của Nginx bằng lệnh sau:
Mã:
systemctl status nginx
Bạn sẽ nháºn được kết quả sau:
Mã:
? nginx.service - Máy chá»§ proxy ngược và HTTP nginx Đã tải: đã tải (/usr/lib/systemd/system/nginx.service; đã tắt; cÃi đặt trước cá»§a nhà cung cấp: đã tắt) Đang hoạt động: Ä‘ang hoạt động (Ä‘ang chạy) kể từ Thứ bảy 2022-01-15 14:14:05 UTC; 7 giây trước Tiến trình: 15356 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Tiến trình: 15354 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Tiến trình: 15351 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) PID chÃnh: 15358 (nginx) Nhiệm vụ: 2 (giá»›i hạn: 11411) Bá»™ nhá»›: 3,8M CGroup: /system.slice/nginx.service ??15358 nginx: tiến trình chÃnh /usr/sbin/nginx ??15359 nginx: tiến trình công nhân15 tháng 1 14:14:05 almalinux8 systemd[1]: nginx.service: Đã thÃnh công.15 tháng 1 14:14:05 almalinux8 systemd[1]: Đã dừng máy chá»§ proxy ngược và HTTP nginx.15/01 14:14:05 almalinux8 systemd[1]: Đang khởi động máy chá»§ proxy ngược và HTTP nginx...15/01 14:14:05 almalinux8 nginx[15354]: nginx: cú pháp tệp cấu hình /etc/nginx/nginx.conf là ok15/01 14:14:05 almalinux8 nginx[15354]: nginx: thá» nghiệm tệp cấu hình /etc/nginx/nginx.conf thÃnh công15/01 14:14:05 almalinux8 systemd[1]: nginx.service: Không phân tÃch được PID từ tệp /run/nginx.pid: Đối số không hợp lệ15/01 14:14:05 almalinux8 systemd[1]: Đang khởi động máy chá»§ proxy ngược và HTTP nginx.
Tại thời Ä‘iểm nÃy, Nginx là đã cÃi đặt và cấu hình để phục vụ Mattermost. Bây giờ bạn có thể tiến hÃnh bước tiếp theo.

Cấu hình Tường lá»a​

Tiếp theo, bạn sẽ cần cho phép cổng 80 Ä‘i qua tường lá»a. Bạn có thể cho phép bằng cách chạy lệnh sau:
Mã:
firewall-cmd --add-service=http --permanent
Tiếp theo, tải lại tường lá»a để áp dụng các thay đổi:
Mã:
firewall-cmd --reload
Sau khi hoÃn tất, bạn có thể tiến hÃnh bước tiếp theo.

Truy cáºp Giao diện người dùng web Mattermost​

Bây giờ, hãy mở trình duyệt web cá»§a bạn và truy cáºp giao diện web Mattermost bằng URL . Bạn sẽ được chuyển hướng đến mÃn hình sau:



Cung cấp địa chỉ email, tên người dùng quản trị, máºt khẩu và nhấp vÃo nút Tạo TÃi khoản. Bạn sẽ nháºn được mÃn hình sau:



Nhấp vÃo Tạo má»™t nhóm. Bạn sẽ nháºn được mÃn hình sau:



Cung cấp tên Nhóm cá»§a bạn và nhấp vÃo nút Tiếp theo. Bạn sẽ nháºn được mÃn hình sau:



Cung cấp URL nhóm Mattermost cá»§a bạn và nhấp vÃo nút HoÃn tất. Bạn sẽ nháºn được bảng Ä‘iều khiển Mattermost trên mÃn hình sau:


Kết luáºn​

Trong hướng dẫn trên, bạn đã tìm hiểu cách cÃi đặt dịch vụ trò chuyện Mattermost vá»›i Nginx trên Alma Linux 8. Bây giờ bạn có thể triển khai Mattermost trong tổ chức cá»§a mình và bắt đầu sá» dụng nó như má»™t dịch vụ trò chuyện ná»™i bá»™. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nÃo.
 
Back
Bên trên