👓

mattermostをdockerでローカルPCに構築

2024/07/01に公開

はじめに

mattermostをローカル環境で気軽に構築する方法をまとめてみます。

mattermostとは

https://mattermost.com/
slackのようなOSSのコミュニケーションツールです。
使用感はslackに非常に似ています。

構築

https://docs.mattermost.com/install/install-docker.html
上記の公式ドキュメントに沿って実施してみます。
※dockerのインストールは割愛します。

リポジトリをクローン

ターミナル ウィンドウで、リポジトリをクローンし、ディレクトリに入ります。

git clone https://github.com/mattermost/docker
cd docker

envファイル作成

env.exampleファイルをコピーして.envをファイルを作成します。

cp env.example .env

env修正箇所

以下の項目を修正していきます。

ドメイン

今回はローカル起動したいのでlocalhostにします。

DOMAIN=mm.example.com

DOMAIN=localhost

タイムゾーン

TZ=US

TZ=Asia/Tokyo

mattermost edition

OSS版のteam-editionに変更します。

MATTERMOST_IMAGE=mattermost-enterprise-edition
MATTERMOST_IMAGE_TAG=X.X.X

MATTERMOST_IMAGE=mattermost-team-edition
MATTERMOST_IMAGE_TAG=X.X.X

※IMAGE_TAGは適宜最新verに読み替えてください。今は9.9.0などです(20240701現在の最新)

URL

今回は証明書を取得せずにローカル起動したいのでhttpにします。

MM_SERVICESETTINGS_SITEURL=https://${DOMAIN}
MM_SERVICESETTINGS_SITEURL=http://${DOMAIN}

パーミッション設定

必要なディレクトリを作成し、権限を設定します。

mkdir -p ./volumes/app/mattermost/{config,data,logs,plugins,client/plugins,bleve-indexes}
sudo chown -R 2000:2000 ./volumes/app/mattermost

SSL化(https化)

今回はローカル起動のため実施しません。

デプロイ

Mattermostをデプロイします。
付属のNGINXを使用しないパターンで起動します。

sudo docker compose -f docker-compose.yml -f docker-compose.without-nginx.yml up -d

シャットダウン

停止は以下のコマンドで可能です。

sudo docker compose -f docker-compose.yml -f docker-compose.without-nginx.yml down

アクセス

http://localhost:8065/

上記にアクセスして、アカウントをGUIで作成します。
以下の画面が表示されたら完了です。
おつかれさまでしたmm

Tips

うまく起動できない場合は、以下のような要因が考えられます。
試してみると改善の糸口が見出せるかもしれません。

  • sudoによる起動がうまくいってない
    • sudo を付与せずコマンドを実行してみてください
  • volumes配下にあるディレクトリのパーミッションが不足している
    • 配下のディレクトリのパーミッションを777などで全権解放してあげる
      • (ローカル環境ならではの方法ではありますが)

おわりに

今回の方法はクラウド環境がなくても気軽に試せるので、
興味がある方は実施してみてください。

合同会社カメレオンミーム Tech Blog

Discussion