GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Menginstal Mattermost di CentOS 8

Dalam tutorial ini, kami akan menunjukkan cara menginstal Mattermost di CentOS 8. Bagi Anda yang belum tahu, Mattermost adalah alternatif Slack cloud pribadi open-source. Tempat kerja sistem pesan untuk web, PC, dan telepon, dirilis di bawah lisensi MIT. Sebagai alternatif untuk pesan SaaS berpemilik, Mattermost membawa semua komunikasi tim Anda ke satu tempat, membuatnya dapat dicari dan diakses di mana saja. Mattermost adalah "kompatibel dengan Slack, bukan Slack -limited”, mendukung superset integrasi webhook masuk dan keluar Slack, termasuk kompatibilitas dengan integrasi Slack yang ada. Dari tim Slack yang ada, Anda dapat mengimpor pengguna, riwayat saluran publik, dan bahkan warna pengaturan tema ke Mattermost.

Artikel ini mengasumsikan Anda memiliki setidaknya pengetahuan dasar tentang Linux, tahu cara menggunakan shell, dan yang terpenting, Anda meng-host situs Anda di VPS Anda sendiri. Instalasi cukup sederhana dan mengasumsikan Anda sedang berjalan di akun root, jika tidak, Anda mungkin perlu menambahkan 'sudo ' ke perintah untuk mendapatkan hak akses root. Saya akan menunjukkan kepada Anda melalui langkah-demi-langkah instalasi Mattermost pada CentOS 8.

Prasyarat

  • Server yang menjalankan salah satu sistem operasi berikut:CentOS 8.
  • Sebaiknya Anda menggunakan penginstalan OS baru untuk mencegah potensi masalah.
  • Seorang non-root sudo user atau akses ke root user . Kami merekomendasikan untuk bertindak sebagai non-root sudo user , namun, karena Anda dapat membahayakan sistem jika tidak berhati-hati saat bertindak sebagai root.

Instal Mattermost di CentOS 8

Langkah 1. Pertama, mari kita mulai dengan memastikan sistem Anda mutakhir.

sudo dnf clean all
sudo dnf install epel-release
sudo dnf update

Langkah 2. Menginstal Server Database.

Jalankan perintah berikut untuk menginstal MariaDB:

sudo dnf install mariadb-server

Secara default, MariaDB tidak dikeraskan. Anda dapat mengamankan MariaDB menggunakan mysql_secure_installation naskah. Anda harus membaca dan di bawah setiap langkah dengan cermat yang akan menetapkan kata sandi root, menghapus pengguna anonim, melarang login root jarak jauh, dan menghapus database pengujian dan akses untuk mengamankan MariaDB:

mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

Enter current password for root (enter for none):
OK, successfully used password, moving on...

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
 ... Success!

Remove anonymous users? [Y/n] y
 ... Success!

Disallow root login remotely? [Y/n] y
 ... Success!

Remove test database and access to it? [Y/n] y
 - Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reload privilege tables now? [Y/n] y
 ... Success!

Cleaning up...
Thanks for using MariaDB!

Kemudian, restart server database MariaDB dan aktifkan untuk memulai sistem start-up menggunakan:

sudo systemctl restart mariadb
sudo systemctl status mariadb
sudo systemctl enable mariadb

Setelah instalasi database, login ke shell MariaDB dan buat database dan pengguna untuk Mattermost:

$ mysql -u root -p
CREATE DATABASE mattermost;
GRANT ALL PRIVILEGES ON mattermost.* TO mattermost@localhost IDENTIFIED BY 'Your-Strong-Passwd';
FLUSH PRIVILEGES;
QUIT;

Langkah 3. Menginstal Mattermost di CentOS 8.

Pertama, Anda perlu membuat pengguna terpisah untuk menjalankan Mattermost. Anda dapat membuatnya dengan perintah berikut:

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

Selanjutnya, unduh Mattermost versi terbaru:

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

Buka arsip Mattermost ke direktori root dokumen di server Anda:

tar xf *.gz
mv mattermost /opt/

Buat direktori penyimpanan untuk file:

mkdir /opt/mattermost/data

Selain itu, atur kepemilikan dan izin:

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

Selanjutnya, kita harus menyiapkan driver database di file /opt/mattermost/config/config.json dengan membuat beberapa perubahan pada isinya. Cari “DriverName ” dan “Sumber Data ” dan ubah sebagai berikut:

nano /opt/mattermost/config/config.json
"SqlSettings": {
        "DriverName": "mysql",
        "DataSource": "mattermost:Str0ngP@ss@tcp(localhost:3306)/mattermost?charset=utf8mb4,utf8\u0026readTimeout=30s\u0026writeTimeout=30s",
        "DataSourceReplicas": [],
        "DataSourceSearchReplicas": [],
        "MaxIdleConns": 20,
        "ConnMaxLifetimeMilliseconds": 3600000,
        "MaxOpenConns": 300,
        "Trace": false,
        "AtRestEncryptKey": "myyti1r597i99qrk7eu91ywqhaawz4md",
        "QueryTimeout": 30
    },

Simpan dan tutup file. Kemudian, ubah direktori menjadi /opt/mattermost dan mulai server Mattermost dengan perintah berikut:

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

Langkah 4. Konfigurasikan Layanan Mattermost Systemd.

Pertama, kita akan membuat systemd baru file unit menggunakan perintah berikut:

nano /etc/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=syslog.target network.target mariadb.service

[Service]
Type=notify
WorkingDirectory=/opt/mattermost
User=mattermost
ExecStart=/opt/mattermost/bin/mattermost
PIDFile=/var/run/mattermost.pid
TimeoutStartSec=3600
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

Selanjutnya, mulai layanan Mattermost dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:

sudo systemctl daemon-reload
sudo systemctl start mattermost.service
sudo systemctl enable mattermost.service

Verifikasi bahwa Mattermost berjalan dan mendengarkan pada port 8065. Anda dapat memeriksanya dengan perintah berikut:

curl http://localhost:8065

Langkah 5. Konfigurasi Nginx dengan Mattermost.

Instal dan konfigurasikan Nginx sebagai proxy terbalik untuk kinerja dan keamanan yang lebih baik. Sekarang kita menginstal Nginx pada sistem CentOS:

sudo dnf install nginx

Setelah menginstal server web Nginx, mulai layanan Nginx dan aktifkan untuk memulai setelah sistem reboot dengan perintah berikut:

sudo systemctl start nginx
sudo systemctl enable nginx

Kemudian, konfigurasikan server web Nginx sebagai proxy untuk Mattermost:

sudo nano /etc/nginx/conf.d/mattermost.conf
upstream backend {
   server 127.0.0.1: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    mattermost.example.com;

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

Terakhir, mulai ulang layanan Nginx untuk menerapkan perubahan:

nginx -t
sudo systemctl restart nginx

Langkah 6. Konfigurasi Firewall.

Izinkan akses firewall pada port HTTP dan HTTPS:

sudo firewall-cmd --add-service={http,https} --permanent
sudo firewall-cmd --reload

Langkah 7. Mengakses Antarmuka Web Terpenting.

Mattermost akan tersedia di HTTP port 80 secara default. Buka browser favorit Anda dan navigasikan ke http://mattermost.example.com dan lanjutkan untuk mengonfigurasi Mattermost dengan memasukkan alamat email dan membuat akun.

Selamat! Anda telah berhasil menginstal Mattermost. Terima kasih telah menggunakan tutorial ini untuk menginstal Mattermost pada sistem CentOS 8. Untuk bantuan tambahan atau informasi berguna, kami sarankan Anda untuk memeriksa situs resmi Mattermost.


Cent OS
  1. Cara Menginstal Vagrant di CentOS 7

  2. Cara Menginstal Gitea di CentOS 8

  3. Cara Menginstal ownCloud di CentOS 8

  1. Cara Menginstal Memcached di CentOS 8

  2. Cara Menginstal Nginx di CentOS 7

  3. Cara Menginstal Apache di CentOS 7

  1. Cara Menginstal Tomcat 8.5 di CentOS 7

  2. Cara Menginstal Jenkins di CentOS 7

  3. Cara Menginstal Tomcat 9 di CentOS 7