Pada artikel ini, kami akan menjelaskan langkah-langkah yang diperlukan untuk menginstal dan mengkonfigurasi Mattermost di Ubuntu 18.04 LTS. Sebelum melanjutkan dengan tutorial ini, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo. Semua perintah dalam tutorial ini harus dijalankan sebagai pengguna non-root.
Mattermost adalah platform open-source yang ditulis dalam React dan Golang. Ini dapat digunakan sebagai platform perpesanan alternatif dan menggunakan database PostgreSQL atau MySQL di backend. Fungsi utama yang paling penting adalah untuk menyatukan komunikasi tim dan menawarkan beberapa fitur seperti berbagi file, emoji khusus, panggilan video, perpesanan (satu lawan satu atau grup), dan sebagainya.
Instal Mattermost di Ubuntu 18.04
Langkah 1. Pertama, sebelum Anda mulai menginstal paket apa pun di server Ubuntu Anda, kami selalu menyarankan untuk memastikan bahwa semua paket sistem telah diperbarui.
sudo apt update sudo apt upgrade
Langkah 2. Instal Database MySQL.
Menginstal paket MySQL dengan perintah berikut:
sudo apt install mysql-server
Paket server MySQL dilengkapi dengan skrip bernama mysql_secure_installation yang dapat melakukan beberapa operasi terkait keamanan. Jalankan skrip dengan mengetik:
sudo mysql_secure_installation
Selanjutnya, buat database dan pengguna baru untuk instalasi Mattermost kami dengan:
$ mysql -u root CREATE DATABASE mattermost; GRANT ALL ON mattermost.* TO [email protected] IDENTIFIED BY 'PassWD';
Sekarang, buat pengguna dan grup sistem baru untuk instance Mattermost. Dalam hal ini, kami akan memberi nama pengguna kami yang paling penting:
sudo useradd -U -M -d /opt/mattermost mattermost
Langkah 3. Instal Mattermost di Ubuntu.
Pertama, unduh versi Mattermost stabil terbaru:
sudo curl -L https://releases.mattermost.com/5.1.0/mattermost-5.1.0-linux-amd64.tar.gz -o /tmp/mattermost.tar.gz sudo tar zxf /tmp/mattermost.tar.gz -C /opt sudo mkdir -p /opt/mattermost/data
Pastikan Anda mengubah kepemilikan direktori menjadi pengguna yang paling penting:
sudo chown -R mattermost: /opt/mattermost
Kemudian, buka file /opt/mattermost/config/config.json, atur driver database ke mysql dan masukkan informasi database:
nano /opt/mattermost/config/config.json
"SqlSettings": { "DriverName": "mysql", "DataSource": "mattermost:[email protected](localhost:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s",
Sekarang, kita perlu menguji apakah server Mattermost berfungsi dengan baik. Untuk melakukannya, ubah ke direktori /opt/mattermost lalu jalankan perintah di bawah ini untuk memulai server:
cd /opt/mattermost sudo -u mattermost bin/mattermost
Langkah 4. Membuat Unit Systemd.
Kami akan membuat file unit mattermost.service di direktori /etc/systemd/system/:
nano /etc/systemd/system/mattermost.service
[Unit] Description=Mattermost After=network.target After=mysql.service Requires=mysql.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=mysql.service
Kemudian restart layanan Mattermost menggunakan perintah di bawah ini:
sudo systemctl daemon-reload sudo systemctl start mattermost sudo systemctl enable mattermost
Langkah 5. Siapkan proxy terbalik menggunakan Nginx.
Jika Anda belum menginstal nginx, ikuti tutorial berikut ini. Sekarang kita perlu menyiapkan blok server baru untuk instance Mattermost:
nano /etc/nginx/conf.d/example.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 example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; 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; 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; } }
Langkah 6. Mengakses Mattermost.
Untuk mengonfigurasi layanan Mattermost, buka browser Anda dan masukkan nama domain tempat Anda akan diarahkan ke halaman pendaftaran.
Hanya itu yang perlu Anda lakukan untuk menginstal Mattermost di Ubuntu 18.04. Saya harap Anda menemukan tip cepat ini bermanfaat. Jika Anda memiliki pertanyaan atau saran, jangan ragu untuk meninggalkan komentar di bawah.