Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
15
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

@hanaita0102

Mattermost構築

環境

CentOS7
Windows7
Mattermost3.9.0
MySQL5.7

概要

dockerやGitLabの方法もありましたがよく分からなかったので、
CentOS7に単体を直接インストールしてみました。
そこからWindowsで実際に使用するところまで。
公式の手順書通りですが、簡潔にまとめます。
https://docs.mattermost.com/install/install-rhel-71.html

使い方はまだあまりいじっていないので、あしからず。
日本語対応なのがすばらしい。

MySQLのインストール

1.ダウンロード
wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
2.yumリポジトリのインストール
yum localinstall mysql57-community-release-el7-9.noarch.rpm
3.MySQLのインストール
yum install mysql-community-server
4.MySQLサーバの起動
systemctl start mysqld.service
5.MySQL初起動時自動生成のrootパスワード取得
grep 'temporary password' /var/log/mysqld.log
6.取得したパスワードでログイン
mysql -u root -p
パスワード入力をしてください。
7.パスワードの変更(今は大文字と記号と数字必須みたいです)
「Password42!」部分に任意のパスを入力してください。
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Password42!';
8.マシンの起動時にMySQLが自動的に起動するように設定します。
chkconfig mysqld on
9.Mattermostユーザー 'mmuser'を作成
mysql> create user 'mmuser'@'%' identified by 'mmuser-password';
10.Mattermostデータベースを作成します
mysql> create database mattermost;
11.ユーザー 'mmuser'にアクセス権を与えます
mysql> grant all privileges on mattermost.* to 'mmuser'@'%';

Mattermostサーバーのインストール

1.最新バージョンを確認して「3.9.0」の部分を変更してください。
https://about.mattermost.com/download/
wget https://releases.mattermost.com/3.9.0/mattermost-3.9.0-linux-amd64.tar.gz
2.Mattermost Serverファイルを抽出
tar -xvzf *.gz
3.解凍したファイルをディレクトリに移動
mv mattermost /opt
4.ファイル用のストレージディレクトリを作成
mkdir /opt/mattermost/data
5.サービスを実行するシステムユーザーとグループを設定し、所有権とアクセス許可を設定
3つ全部やります
useradd --system --user-group mattermost
chown -R mattermost:mattermost /opt/mattermost
chmod -R g+w /opt/mattermost
6.ファイルにデータベースドライバを設定
テキストエディタで編集します
vi /opt/mattermost/config/config.json
"DriverName"がmysqlになっているか確認
"mmuser~"の内容を以下のように変更
mmuser-passwordをパスワード、host-name-or-IPをホストIPに変更
"mmuser:<mmuser-password>@tcp(<host-name-or-IP>:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s"
7.Mattermostサーバーをテスト
cd /opt/mattermost/bin
Mattermostサーバ起動
sudo -u mattermost ./platform
ログが出ることを確認したら終了
CTRL + C
8.Mattermostプロセスの監視を処理するデーモンを使用するため、Mattermostを設定
Mattermost設定ファイルを作成
touch /etc/systemd/system/mattermost.service
作成した空の設定ファイルに下記のものをコピー

[Unit]
Description=Mattermost
After=syslog.target network.target postgresql-9.4.service

[Service]
Type=simple
WorkingDirectory=/opt/mattermost/bin
User=mattermost
ExecStart=/opt/mattermost/bin/platform
PIDFile=/var/spool/mattermost/pid/master.pid
LimitNOFILE=49152

[Install]
WantedBy=multi-user.target

サービスを実行可能にする
chmod 664 /etc/systemd/system/mattermost.service
システムのサービスをリロード
systemctl daemon-reload
Mattermostサービスを有効にする
chkconfig mattermost on
起動時にMattermostを起動するように設定
systemctl enable mattermost
9.Mattermostサーバーを起動
systemctl start mattermost
10.Mattermostが実行中であることを確認
Mattermostサーバーから返されたHTMLが表示されます
curl http://localhost:8065

Mattermostサーバーの設定

1.ブラウザでMattermostインスタンスに移動
http://IPアドレス:8065

2.最初のチームとユーザを作成
最初に作成したユーザは管理者権限があるので、
システムコンソール等にアクセスできます。
統計とか見れたりします。

3.システムコンソールを開く
左上のユーザ名をクリックすると、「System Console」があります。

4.サイトURLを設定
「GENERAL」から設定できます。

日本語設定

1.ユーザ名から「Account Settings」

2.左のサイドバーの「Display」

3.下部「Language」横の「Edit」で、「日本語」→「Save」

誰かを招待

アカウントを持っていない人を招待
1.ユーザ名から「チーム招待リンクを入手」

2.URLが表示されるので、それを送信してアカウントを作ってもらう。

アカウントがある人を招待
1.ユーザ名から「メンバーをチームに追加」

2.もしくはURLを送るだけです。
http://IPアドレス/チーム名/

まとめ

この方法はとても簡単でした。
各OS用のソフトがあるので、ブラウザじゃなくてもいい。
iOSとAndroidにもアプリがあるので、本体にVPN設定をしてあれば、
外出先からスマホでも利用ができます。
Slackと違って日本語なのが本当便利です。
設定も分かりやすいですしね!
見た目はSlackそっくりですが...
Mattermostのサイトをチラッと覗いたら、
「Mattermost vs Slack」
なんてのを目にしました。
敵意むき出しですが、対抗できると思います。笑
OSSなのでいろいろ実装できそうですし。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
15
Help us understand the problem. What are the problem?