はじめに
Mattermostは、セルフホストのオープンソースオンラインチャットです。組織や企業向けのプライベートな会話として開発されています。
これは、SlackやMicrosoftTeamsなどの機能を備えたツールです。また、MattermostはPostgreSQLデータベースサーバーとともにインストールされることがよくあります。
以下は、Ubuntu20.04にMattermostをデプロイする方法に関するガイドです。
ステップ1–システムを更新する
aptコマンドを実行します:
$ sudo apt update
次に、次のコマンドを実行します:
$ sudo apt upgrade
出力:
最後に、適切なサーバーのホスト名を設定します:
$ sudo hostnamectl set-hostname NEW_HOSTNAME --static
ここでは、「 chat.ubuntu」という名前のホスト名を設定します 」
$ sudo hostnamectl set-hostname chat.ubuntu --static
ステップ2–PostgreSQLデータベースサーバーをインストールする
aptコマンドを実行してインストールします:
$ sudo apt install postgresql postgresql-contrib
出力:
次に、postgresアカウントにログインします:
$ sudo --login --user postgres
ターミナルでPostgeSQLを起動し、Mattermostデータベース/ユーザーを作成します。ここでは「linuxer」と名付けました 」とパスワード「[メール保護] 」
psql
CREATE DATABASE mattermost;
CREATE USER linuxer WITH PASSWORD '[email protected]';
GRANT ALL PRIVILEGES ON DATABASE mattermost to linuxer;
\q
ステップ3–Mattermostシステムユーザーとグループを作成する
「mattermost」という名前のシステムユーザーとグループを作成します 」:
$ sudo useradd --system --user-group mattermost
次のコマンドで確認できます:
$ id mattermost
出力:
ステップ4–Mattermostをインストールする
まず、「最も重要」という名前のフォルダを作成する必要があります 」
$ mkdir mattermost
次に、そこに移動します:
$ cd mattermost
wgetコマンドを実行してMattermostをダウンロードします:
$ wget https://releases.mattermost.com/5.38.1/mattermost-5.38.1-linux-amd64.tar.gz
出力:
パッケージを抽出します:
$ tar -xvzf mattermost*.gz
抽出したファイルを/otpディレクトリにコピーします:
$ sudo cp -r mattermost /opt
ユーザーデータを含むMattermostのフォルダーを作成します:
$ sudo mkdir /opt/mattermost/data
正しい所有権と権限を設定する:
$ sudo chown -R mattermost:mattermost /opt/mattermost
最後に、/ opt /mattermostディレクトリへの書き込み権限を付与しましょう:
$ sudo chmod -R g+w /opt/mattermost
ステップ5–MattermostServerを構成する
ファイル/opt/mattermost/config/config.json
の構成設定$ sudo nano /opt/mattermost/config/config.json
次に、PostgreSQLデータベース設定を構成します。
テキストエディタを開いたら、Ctrl + Wを押して、「 DriverName」を検索します。 」
赤い部分の線を変更します:
"postgres://matteruser:[email protected]:5432/mattermost?sslmode=disable&connect_timeout=10",
保存します。
ステップ6–Systemdサービスの構成
Mattermost Systemdの作成:
$ sudo vim /etc/systemd/system/mattermost.service
以下の行を入力してください:
[Unit] Description=Mattermost 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
ESC +:wqを押して保存します。
新しいユニットをsystemdにロードします:
$ sudo systemctl daemon-reload
サービスの実行ステータスを確認します:
$ systemctl status mattermost.service
出力:
最も重要なサービスを有効にする:
$ sudo systemctl enable mattermost.service
ステップ7–Nginxをインストールする
$ sudo apt -y install nginx
Mattermost構成ファイルにドメインを入力する必要があります:
$ sudo nano /opt/mattermost/config/config.json
保存します。
テキストエディタを開いて、ドメインにアクセスできるように設定します。
$ sudo nano /etc/nginx/sites-available/mattermost.conf
以下の行を追加します:
upstream backend { server localhost: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 your domain; 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; } }
保存します。
このサイト構成を機能させるには、/ etc / nginx / sites-enabled:
フォルダーにそのサイトのソフトリンクを作成する必要があります。$ sudo ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.conf
次のコマンドを実行して、構成の有効性を確認します。
$ sudo nginx -t
出力:
Nginxを再起動します:
$ sudo systemctl restart nginx
次に、最も重要なサービスを開始します:
$ sudo systemctl start mattermost
ドメインへのアクセスを試みることができます。
結論
Ubuntu20.04にMattermostをデプロイする方法の詳細については、すでに説明しました。お読みいただきありがとうございます。