はじめに
MattermostはSlackの代替として利用できるオープンソースのチャットプラットフォームです(日常的に使っています)。
この記事では、Docker Composeを使ってMattermostをローカル環境(Mac)に起動しようとした際に発生したエラーと、その対処法、そして基本的な起動手順をまとめます。
Dockerのサンプル構成は以下のリポジトリで公開されています。
書こうと思ったきっかけ
ローカル環境でMattermostを起動しようとしたところ、コンテナが起動直後にクラッシュする問題が発生しました。
つながらなくて、困った画面
Apple Silicon(M1/M2)特有の問題であり、同じ状況に陥る人も多いと考えられるため、備忘録としてまとめておきます。
使っているMacbookのモデル
実際にやってみた
公式リポジトリの利用と構成変更
リポジトリをクローン
git clone https://github.com/mattermost/docker
cd docker
実際のターミナル画面
M1/M2 Mac向けに修正
docker-compose.yml
の各サービスに platform: linux/amd64
を追加します。
services:
postgres:
platform: linux/amd64
image: postgres:${POSTGRES_IMAGE_TAG}
...
mattermost:
platform: linux/amd64
depends_on:
- postgres
image: mattermost/${MATTERMOST_IMAGE}:${MATTERMOST_IMAGE_TAG}
...
.env
ファイルの作成
cp env.example .env
ポートマッピングの確認・修正
Mattermostにブラウザからアクセスするには、ポート 8065
をホストに公開する必要があります。docker-compose.yml
の app
サービスに以下を追加します:
mattermost:
app:
...
ports:
- "8065:8065"
コンテナを起動
docker-compose up -d
実際のターミナル画面
~/Desktop/macbook pro/test/docker (git)-[main]- docker-compose up -d
[+] Running 18/18
✔ postgres Pulled 41.7s
✔ mattermost Pulled 102.6s
[+] Running 3/3
✔ Network docker_default Created 0.0s
✔ Container docker-postgres-1 Started 0.6s
✔ Container docker-mattermost-1 Started 0.3s
~/Desktop/macbook pro/test/docker (git)-[main]-
その他に使ったコマンド
docker-compose down
docker-compose up -d
アクセス確認
ブラウザで http://localhost:8065
にアクセスし、セットアップ画面が表示されれば成功です。
問題なくセットアップ画面が表示されました!
セットアップしてみた
まず、メールアドレス・ユーザー名・パスワードの入力が求められるので、必要な情報を入力していきます。
次に、作成する組織の名前を設定します。
この画面については、今のところ特に設定の必要がなかったため、スキップしました。
こちらも現在はテスト用途で自分ひとりの利用だったため、誰も招待せずにそのまま完了しました。
登録が完了すると、メッセージが送れるルームが表示されるので、いくつかテストメッセージを送ってみました。
SlackのようなOSSのコミュニケーションツールで、面白いと思いました。手元で簡単に構築できたので、今後も機会があれば活用していきたいと思います...!
まとめ
ここまで読んでいただき、ありがとうございました!
- M1/M2 MacでMattermostをDocker Composeで動かすには、
platform: linux/amd64
の指定が必要 - ポートマッピングの設定がないと、ホストからアクセスできない
- 公式リポジトリをベースに環境構築し、環境に合わせて柔軟に構成を調整する必要がある
同じような構成で詰まった方の参考になれば幸いです...!
参考文献