🐥

Ubuntu 20.04にMattermostを構築する

2022/07/21に公開

2022年7月18日にSlackの料金改定が行われ阿鼻叫喚する企業があるとかないとか(笑)
じゃあお金に左右されないSlackみたいな無料のツールを探せばよくね?
と言うことで、今回は「Mattermost」を紹介します。

Mattermostとは

※Wikipediaより抜粋

Mattermost (マターモースト) は、オープンソースのセルフホスティング式のチャットサービスである。
組織や企業の内部チャットとして設計されており、Slackの代替として売り出されている。

構築していく

環境の母体はUbuntu20.04とします。

まずはmariadbのインストール

$ sudo apt-get update
$ sudo apt-get -y install mariadb-server
$ sudo mysql -uroot -e "SET PASSWORD = PASSWORD('root'); FLUSH PRIVILEGES;"
$ mysql -uroot -proot -e "CREATE DATABASE mattermost DEFAULT CHARACTER SET utf8mb4;"
$ mysql -uroot -proot -e "CREATE USER mattermost@localhost IDENTIFIED BY 'mattermost';"
$ mysql -uroot -proot -e "GRANT ALL PRIVILEGES ON mattermost.* TO 'mattermost'@'localhost';"
$ mysql -uroot -proot -e "FLUSH PRIVILEGES;"

最後にMattermostのインストール

$ wget https://releases.mattermost.com/5.22.3/mattermost-5.22.3-linux-amd64.tar.gz
$ tar xvfz mattermost-5.22.3-linux-amd64.tar.gz
$ sudo mv mattermost /opt
$ sudo mkdir -p /opt/mattermost/data
$ sudo useradd --system --user-group mattermost
$ sudo chown -R mattermost:mattermost /opt/mattermost
$ sudo chmod -R g+w /opt/mattermost
$ sudo sed -i -e 's#mmuser:mostest#mattermost:mattermost#' /opt/mattermost/config/config.json
$ sudo sed -i -e 's#dockerhost:3306#localhost:3306#' /opt/mattermost/config/config.json
$ sudo sed -i -e 's#mattermost_test#mattermost#' /opt/mattermost/config/config.json
$ cat << EOF | sudo tee /etc/systemd/system/mattermost.service
[Unit]
Description=Mattermost
After=network.target
After=mysql.service
Requires=mysql.service

[Service]
Type=simple
ExecStart=/opt/mattermost/bin/platform
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
User=mattermost
Group=mattermost
LimitNOFILE=49152

[Install]
WantedBy=mysql.service
EOF

$ sudo systemctl enable mattermost.service
$ sudo systemctl start mattermost.service

ブラウザからアクセスしてみる

アカウント設定

  • Email
  • username
  • password
    を入力します。

所属するチーム名を入力します

適当にredteamとしました。

Team URL作成されます

操作画面に遷移します

脱Slackされたい方や、セキュリティポリシー的にSlackを使えなかった方などは是非Mattermostを利用してみてください。

Discussion