نصب Mattermost؛ آموزش نصب و راه اندازی سرور مترموست روی لینوکس

نصب mattermost

آنچه در مقاله می‌خوانید

در این مطلب قصد داریم به بررسی نصب مترموست و چگونگی راه‌اندازی Mattermost روی سرور اختصاصی ایران و خارج بپردازیم. نصب مترموست، بهترین راه برای ایجاد یک چت سازمانی امن و با امکانات متعدد است که می‌توان با استفاده از یک سرور مجازی لینوکس آن را پیاده سازی کرد. در ادامه به مراحل نصب Mattermost روی سرور مجازی ایران لینوکس با توزیع اوبونتو می‌پردازیم.

Mattermost چیست و چرا آن را نصب کنیم؟

Mattermost یک نرم‌افزار چت سازمانی متن‌باز و خودمیزبان (Self-Hosted) است که قابلیت‌های پیشرفته‌ای مثل آموزش mattermost، اشتراک‌گذاری فایل، تماس صوتی/تصویری، وب‌هوک و ادغام با ابزارهای توسعه مثل جیرا و گیت هاب را ارائه می‌دهد. این پلتفرم یک جایگزین عالی برای اسلک است و کنترل داده‌ها را به سازمان می‌سپارد. بنابراین اولین مرحله، انتخاب سرور مناسب برای نصب Mattermost است.

آموزش نصب Mattermost

در ادامه به بررسی مراحل نصب مترموست روی سرور اوبونتو و راه اندازی یک سرور مترموست برای چت‌های درون سازمانی می‌پردازیم:

بررسی پیش‌نیازها

برای نصب mattermost به یک سرور مجازی لینوکس با حداقل ۲ گیگ رم، PostgreSQL، و دسترسی sudo نیاز دارید.

نصب PostgreSQL Server

بسته‌های سیستم را به‌روز کنید:

sudo apt update

PostgreSQL و ابزارهای تکمیلی آن را نصب کنید:

sudo apt -y install postgresql-12 postgresql-contrib

تنظیم کنید که سرویس PostgreSQL در راه‌اندازی سیستم به‌صورت خودکار اجرا شود:

sudo systemctl enable postgresql

سپس با استفاده از دستور زیر سرویس را اجرا کنید:

sudo systemctl start postgresql

سپس دیتابیس و کاربر Mattermost ایجاد می‌شود.

ایجاد دیتابیس Mattermost

ابتدا امنیت PostgreSQL را با تغییر رمز عبور پیش‌فرض postgres افزایش دهید:

sudo passwd postgres

سپس به کاربر postgres سوئیچ کنید:

su - postgres

یک کاربر جدید به نام mattermostuser ایجاد کنید:

createuser mattermostuser

وارد محیط PostgreSQL شوید:

psql

برای کاربر mattermostuser یک رمز عبور قوی تنظیم کنید:

ALTER USER mattermostuser WITH ENCRYPTED PASSWORD 'SecurePassword';

یک دیتابیس جدید به نام mattermost بسازید و مالک آن را mattermostuser قرار دهید:

CREATE DATABASE mattermost OWNER mattermostuser;

تمامی مجوزها روی دیتابیس mattermost را به کاربر mattermostuser بدهید:

GRANT ALL PRIVILEGES ON DATABASE mattermost TO mattermostuser;

از محیط PostgreSQL خارج شوید:

\q

در نهایت به حساب کاربر غیرریشه خود بازگردید:

exit

نصب Mattermost

یک کاربر و گروه سیستمی به‌نام mattermost ایجاد کنید:

sudo useradd --system --user-group mattermost

آخرین نسخه Mattermost را دانلود کنید (به صفحه رسمی انتشار برای نسخه جدید مراجعه کنید):

wget https://releases.mattermost.com/6.4.0/mattermost-6.4.0-linux-amd64.tar.gz

فایل فشرده را استخراج کنید:

sudo tar xvf mattermost-6.4.0-linux-amd64.tar.gz

پوشه استخراج‌شده را به /opt منتقل کنید:

sudo mv mattermost /opt

فایل فشرده دانلودشده را حذف کنید:

sudo rm mattermost-6.4.0-linux-amd64.tar.gz

دایرکتوری ذخیره‌سازی داده‌ها را بسازید:

sudo mkdir -p /opt/mattermost/data

مالکیت و مجوزها را تنظیم کنید:

sudo chown -R mattermost:mattermost /opt/mattermost
sudo chmod -R g+w /opt/mattermost

پیکربندی سرور Mattermost

فایل پیکربندی را برای تنظیمات دیتابیس ویرایش کنید:

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

در قسمت SqlSettings، تنظیمات زیر را جایگزین کنید:

"DriverName": "postgres",
"DataSource": "postgres://mattermostuser:SecurePassword@localhost:5432/mattermost?sslmode=disable&connect_timeout=10",

یک واحد سرویس systemd برای Mattermost بسازید:

sudo nano /etc/systemd/system/mattermost.service

محتوای زیر را در فایل قرار دهید، ذخیره و خارج شوید:

[Unit]
Description=Mattermost Server
After=network.target
After=postgresql.service
Requires=postgresql.service

[Service]
Type=notify
ExecStart=/opt/mattermost/bin/mattermost
TimeoutStartSec=3600
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
User=mattermost
Group=mattermost
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

daemon systemd را دوباره بارگذاری کنید:

sudo systemctl daemon-reload

سرویس Mattermost را اجرا کنید:

sudo systemctl start mattermost

تنظیم کنید تا سرویس در زمان راه‌اندازی سیستم اجرا شود:

sudo systemctl enable mattermost

وضعیت سرویس را بررسی کنید:

systemctl status mattermost

پورت‌های مورد نیاز را با UFW باز کنید:

sudo ufw allow 8065/tcp
sudo ufw allow 80/tcp

ایجاد Reverse Proxy

رابط وب Mattermost را با مراجعه به http://Server_IP:8065 تست کنید، برای مثال:

http://192.0.2.11:8065

Nginx را نصب کنید:

sudo apt install -y nginx

پیکربندی پیش‌فرض Nginx را غیرفعال کنید:

sudo unlink /etc/nginx/sites-enabled/default

یک فایل پیکربندی جدید به نام mattermost.conf ایجاد کنید:

sudo nano /etc/nginx/sites-available/mattermost.conf

محتویات زیر را داخل فایل قرار دهید، سپس ذخیره و خارج شوید: 

server {
listen 80;
server_name example.com;

location / {
proxy_pass http://localhost:8065;
}
}

پیکربندی را فعال کنید:

sudo ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.conf

سرویس Nginx را ری‌استارت کنید:

sudo service nginx restart

حالا می‌توانید بدون واردکردن پورت، به وب‌سایت مراجعه کنید.

به این منظور مرورگر خود را باز کنید و آدرس را با فرمت http://Server_IP وارد کنید:

http://<IP یا domain>

جمع بندی

در این مقاله به‌صورت جامع مراحل نصب و راه‌اندازی Mattermost برای ایجاد یک سیستم چت سازمانی امن و حرفه‌ای بررسی شد. با استفاده از Mattermost، می‌توانید یک محیط ارتباطی داخلی مشابه Slack، اما کاملاً خودمیزبان و قابل کنترل راه‌اندازی کنید.

5/5 - (1 امتیاز)
دیدن نظرات
small

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

5 × 2 =

عضویت در خبرنامه مبین هاست
مطالب کدام دسته‌بندی‌ها برای شما جذاب‌تر است؟

آنچه در مقاله می‌خوانید

مقالات مرتبط
خدمات مبین هاست