ソースのダウンロード
公式サイトからソースをダウンロードします。(https://about.mattermost.com/download/)
Enterpriseとteamがあるので間違わないようにしましょう。
Enterpriseは有償です。
docker版とソース版があるのですが、ソース版を使用します。
ソースの解凍
$ tar -xvf mattermost-team-x.x.x-libnux-amd64.tar
で解凍します。解凍するとmattermostのフォルダが生成されます。
ソースをコピー
/opt配下に解凍したフォルダを移動します。
$ mv mattermost /opt/
コピーしたら所有者の変更をしておきましょう。
$ chown -r mattermost:mattermost /opt/mattermost
初期設定
"SqlSettings": {
"DriverName": "mysql", ←mysqlを使用します。
"DataSource": "mmuser:<passwd>@tcp(<SQL_ADDR>:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s", ←SQLサーバへ接続するためのユーザ名・パスワード・ホスト名・ポートを変更します。
"DataSourceReplicas": [],
"DataSourceSearchReplicas": [],
"MaxIdleConns": 20,
"MaxOpenConns": 300,
"Trace": false,
mattermostの起動
$ sudo -u mattermost /opt/mattermost/bin/platform
でエラーがないか確認します。問題なければ、ブラウザからhttp://<ホスト名>:8065/に接続すると管理者ユーザ作成の画面が表示されます。
うまく表示できたら、CTRL+Cで終了しましょう。
pluginのエラー
mkdir ./client/plugin no such file or directory
というエラーが発生しました。ただ単に環境変数の設定が悪いような気もしますが、./clientが/opt/mattermost/binにないのが原因にようです。ちなみにclientは/opt/mattermostにあります。そこで、/opt/mattermost/clientを/opt/mattermost/bin/clientとしてリンクします。
$ ln -s /opt/mattermost/client /opt/mattermost/bin/client
これでpluginも利用可能になりました。
自動起動
このままでは再起動してもmattermostは起動しません。
自動起動用のスクリプトを設置します。
[Unit]
Description=Mattermost
After=syslog.target network.target mariadb.service
[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid
systemdに登録します。
$sudo systemctl daemon-reload
$sudo systemctl enable mattermost
$sudo systemctl start mattermost
あとはWebGUIで設定します。