mattermostというSlackライクなOSSのチャットツールを試してみました。
Slackを使いたいけど、企業として、センシティブな情報をどうしてもホスティングなサービスには公開できない。。
という方々にとっては一つの選択肢になるのではないでしょうか。
手動で今回は構築しましたが、Dockerのimageを作りこめば、もろもろ自動化や冗長化もできそうです。
1. mattermostのimageを取得する
docker pull mattermost/platform
docker run --name mattermost-dev -d --publish 8065:80 mattermost/platform
2. GitLab側で、mattermostをApplicationとして設定する
Applicationの登録
以下のページを参考にしました。
GitLab > Admin > Applications で、新しいApplicationを追加して、IdとSecretを発行します。
その際に、利用するRedirectURlは
${あなたのGitLab}/signup/gitlab/complete
となります。
3. mattermost側での設定
コンテナに/bin/bash
ではいって、
docker exec -it mattermost-dev /bin/bash
設定ファイルを編集します。/mattermost/config/config.json
ではないのでご注意ください。
vi /config_docker.json
"GitLabSettings": {
"Enable": false,
"Secret": "取得したSecret",
"Id": "取得したId",
"Scope": "",
"AuthEndpoint": "${あなたのGitLab}/oauth/authorize",
"TokenEndpoint": "${あなたのGitLab}/oauth/token",
"UserApiEndpoint": "${あなたのGitLab}/api/v3/user"
},
mattermostコンテナを再起動
設定ファイルを編集し終わったら、コンテナから抜けて、mattermostコンテナを再起動します。
docker restart mattermost-dev
4. Webブラウザでログインできる確認してみる
コンテナを作成したURLにウェブブラウザでアクセスしてみました。
GitLab Accountでログインできそうなボタンが追加されてますね!
チーム名を入力して、ボタンを押下すると、、、
いけました!
日本語入力や改行もできるし、よりSlackっぽくなってきましたね。
Dockerでお手軽にできるのも魅力的ですね。
以上となります。