2020年1月2日木曜日

【VPS活用】Mattermost(Slack風チャットツール)のインストールと使い方

https://www.kagoya.jp/howto/webhomepage/mattermost/
シェアしました。

Mattermost(マターモースト)は、たとえ離れた場所にいても仕事上のコミュニケーションをスムーズに進め、テレワークにも活用できます。この記事ではMattermostのインストールと利用方法について、初めての方にもわかるようにまとめています。また似ているといわれているSlackとの違いを整理して、Mattermostの特徴をあらためて明確にしていきます。

Mattermostとは?

公式サイトの概要ページ(英文)などの情報によれば、Mattermost は2015年公開のプロジェクトの名称で、開発元は米国にあるMattermost, Inc.です。プライベートクラウドでのサービスを提供し、チームエディション(オープンソース)と、エンタープライズエディション(有償)の2種類あります。
日本語化され、モバイル環境ではiOSやAndroid用アプリを活用でき、効率的なコミュニケーションが可能です。
Mattermost はSlackと似ているといわれていますが、実際にはどうでしょうか。次章で違いを整理してみたいと思います。

Slackとの違いは?

Mattermostは自社サイト上で違いを明確にしています。そのページを参考にポイントをまとめました。
項目(性能・条件など)MattermostSlack
サービス形態サーバーにインストール(基本)Webサービスに申し込む
すぐに開始できるか不可(サーバー設定が必要)
利用できるアプリiOS、AndroidiOS、Android、Windows Phone、Windows、Mac、Linux
各種カスタマイズ不可
セキュリティ強化利用者がコントロールできない
性能の改善サーバーの変更などにより可利用者がコントロールできない
外部サービスとの連携容易困難
保存容量の制約サーバーの性能に左右される
利用料金無料(チームエディション)無料~1,600円(1名で1か月)
サポート無(基本)有(プラン次第)
知名度比較的低い比較的高い
日本語の関連情報比較的少ない多い
Mattermostの方がSlackに比べて自由さ、カスタマイズのしやすさがあります。そのため利用する業務により、改良したい機能が多く想定される場合には、Mattermostを導入して開発した方が効果的と考えられます。

Mattermostをインストールしよう

それでは公式サイトなどの情報をもとに、Mattermostをサーバーにインストールしてみましょう。

利用したVPSのプラン

検証用に、こちらのスペックにてVPSにセットアップします。
企業名カゴヤ・ジャパン
プラン名KAGOYA CLOUD/2のVPS「KVM」プラン
CPU2コア
メモリー2GB
ストレージSSD 30GB
OSテンプレートUbuntu16.04(64bit)
料金日額 35円/、月額 979円
【注意!】
Mattermostをインストールする前に、VPSの初期設定をしてセキュリティ対策することをおすすめします。詳しくは、以下の記事を参考にしてください。

サーバーシステムの状態を最新化

Ubuntu16.04のサーバーが用意できたら、まずはこちらのコマンドを実行します。
【コマンド】
sudo apt-get update
sudo apt-get upgrade

データベースの用意

利用可能なデータベースはMySQLかPostgreSQL.のどちらか一方です。今回はMySQLを利用して、以下のコマンドで用意します。
【コマンド】
sudo apt-get install mysql-server
mysql -u root -p
注) 1行目のコマンドを実行中に、パスワードを設定します。
データベース名「mattermost」、ユーザー名「mmuser」、パスワード「mmuser-password」の場合、以下のコマンドを実行します。
【コマンド】
mysql> create user ‘mmuser’@’localhost’ identified by ‘ mmuser-password ‘;
mysql> create database mattermost;
mysql> grant all privileges on mattermost.* to ‘mmuser’@’localhost’;
mysql> quit
注) 1行目のmmuser-passwordは、任意のパスワードを指定します。

Mattermost Serverのダウンロードとインストール(コンソールでの作業)

2019年1月時点でのバージョンは5.7.0です。こちらの公式ページを参考にして、常に最新バージョンを利用しましょう。
【コマンド】
wget https://releases.mattermost.com/5.7.0/mattermost-5.7.0-linux-amd64.tar.gz
tar -xvzf mattermost*.gz
sudo mv mattermost /opt
sudo mkdir /opt/mattermost/data
次にファイルを実行するユーザー名とグループ名、さらに所有権とパーミッションを設定します。
【コマンド】
sudo useradd –system –user-group mattermost
sudo chown -R mattermost:mattermost /opt/mattermost
sudo chmod -R g+w /opt/mattermos
続いてデータベースドライバーのファイルを編集します。
【コマンド】
vi /opt/mattermost/config/config.json
【コマンド】127行目あたり
“DriverName”: “mysql”,
データベースの名前を上記に合わせて、mysqlにします。すでに設定済の場合は、そのままにします。
【コマンド】
128行目あたりを確認すると下記のようになっています。
“DataSource”:
“mmuser:mostest@tcp(dockerhost:3306)/mattermost_test?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s”,
そこで、赤字の部分を表のように変更します。
修正箇所修正後
mostestデータベースのパスワード
dockerhostサーバー名(今回の場合はlocalhost)
mattermost_testデータベース名(今回の場合はmattermost)

自動起動できるようにする

【コマンド】
vi /lib/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
次に有効化します。
【コマンド】
sudo systemctl daemon-reload
sudo systemctl status mattermost.service
sudo systemctl start mattermost.service
curl http://localhost:8065
sudo systemctl enable mattermost.service

インストール後の初期設定

ここからはブラウザ上での設定に移ります。以下のように、サーバーのIPアドレス(ここではxxx.xxx.xxx.xxx)などに続いて、:8065と入力します。
http://xxx.xxx.xxx.xxx:8065

管理者アカウント設定

初期設定画面が表示されるので、画面に従ってメールアドレス、ユーザー名、パスワードを入力していきます。
すると以下の画面に切り替わります。Mattermost全体のシステム設定をするため、「System Console」画面に移動します。
再び画面が変わりシステム設定画面が表示されます。多くの設定項目があります。

日本語化の設定(システム管理画面)

サイドメニューより「Localization」を選択後、「Default Server Language」「Default Client Language」の2つの項目で、「日本語」を選択します。

チームの新規作成

管理者アカウント設定と同じ画面ですが、この画面上の「Create a new team」をクリックして、画面にそって作成します。
チームの新規作成が終わると、以下の画面に変わります。

日本語化の設定(利用者用画面)

今度は利用者向けの画面を日本語化します。下の画面の①の部分をクリックすると、メニューが開きます。このメニューの中から、「Account Settings」を選択します。
サイドメニューの「Display」を選択した後、「Language」の項目で「日本語」を選択します。設定を保存すると、日本語への変更は完了です。

Mattermostの基本的な使い方

使い方の説明に入る前に、Mattermostでよく使われている用語を理解しておきましょう。

用語解説

チームメンバーが共同で作業をする場所で、最初に作成
(一般的なコミュニティのイメージと考えます)
チャンネルトピックス毎に作られた専用場所
公開チャンネル、非公開チャンネル、ダイレクトメッセージがあります
公開チャンネルチームに所属するメンバー全員に公開されたチャンネル
非公開チャンネルチームに所属する特定のメンバーのみに公開されたチャンネル
(個人情報を扱う場合などに適していると考えます)
ダイレクトメッセージ2人以上の特定のメンバーのみの間で交わされるメッセージで、特定のメンバー以外にはメッセージは非公開
【参考サイト】Welcome to Mattermost!

チームを作成する

Mattermostを活用してコミュニケーションを行うためには、チームを作成する必要があります。必要に応じて複数のチームを作成可能です。
すでに前章「チームの新規作成」で解説した別の方法で、ここでは作成方法を解説します。
下の画面の①の部分をクリックすると、メニューが開きます。このメニューの中から、「新しいチームを作成する」を選択します。すると画面が変わりますので、画面に従って入力すればチームを新規に作成できます。

チャンネルを作成する

下図の赤枠(+印)の部分をクリックすると別画面が開きます。必要事項を入力すれば簡単に作成できます。必須ではありませんが、項目名「ヘッダー」に情報を入力しておけば、メンバー間でこれらの情報が共有できて便利です。

ダイレクトメッセージを送る

下図の赤枠(+印)の部分をクリックすると別画面が開きます。
送信先選択すると、メッセージの入力画面が表示されます。同じ画面に履歴も表示されているので、以前のやりとりを確認したい場合には便利ですね。

メンバーのチームへの招待

以下の3つの方法があります。
チーム管理者招待するメンバー
招待メールをMattermostより送信メールのリンクより手続き
チーム招待リンクを何等かの方法で招待するメンバーに伝えるチーム招待リンクより手続き
管理画面上で追加する(サーバーアカウントを取得済)
注) 1の方法で実施するためには、メールサーバーの指定が必要です。
今回は2の方法で説明したいと思います。下図の赤枠「チーム招待リンクを入手」をクリックします。
「チーム招待リンク」が表示されたら、「リンクをコピーする」ボタンをクリックします。
チーム管理者は、別途メールなどにこのリンクをペーストして、招待するメンバーに送付します。メンバーは、受信したメールなどに記載されている「チーム招待リンク」URLをクリックして、開いたページにて手続きをします。

投稿

チャンネルを選択した後、画面の一番下にある赤枠の部分(「メッセージを書き込んでください」と表示されている部分)に書き込み、エンターキーを押せば投稿できます。送信ボタンはありませんのでご注意ください。ファイルも添付できます。投稿の履歴は、その上に表示されていきます。

使ってみた感想(まとめ)

多くの点でSlackと似ていますが、カスタマイズ性はMattermostが優れています。そのため組織(チーム)が大きくなるほど、向いているのではないでしょうか。これで利用者(メンバー)のいろいろな要望を実現できますね。
Mattermostを利用するには独自のサーバーの構築が必要ですので、ぜひカゴヤ・ジャパンのプランを使って始めてみませんか。

0 コメント:

コメントを投稿