TL;DR
OSSのチャットツールであるchatwootをdockerを使って動かしてみます。
(内容は、ほぼほぼ備忘録です)
リポジトリのクローン
GitHubにあるchatwootのリポジトリをクローンしてきます。
git clone https://github.com/chatwoot/chatwoot.git
設定ファイルの作成
リポジトリ内にある設定ファイルのサンプルをリネームします。
cp .env.example .env
リネームした上記設定ファイルを編集します。ここでは、redisとpostgresのパスワードを設定します。
(パスワードは任意のものでOK)
.env
REDIS_PASSWORD=password
POSTGRES_PASSWORD=postgres
docker-composeの設定
リポジトリ内のdocker-compose.yaml
を編集します。Postgresのパスワードとタイムゾーンを設定します。
docker-compose.yaml
# ...(省略)
postgres:
image: postgres:12
restart: always
ports:
- '5432:5432'
volumes:
- postgres:/data/postgres
environment:
- POSTGRES_DB=chatwoot
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres # 追加
- PGPASSWORD=postgres # 追加
- TZ=Asia/Tokyo # 追加
# ...(省略)
コンテナの作成&実行
以下のコマンドを叩きます。
DBの初期化に失敗する場合、一度docker-compose up
でコンテナを起動した後、再度DBを初期化すると、成功するかもしれません。
# コンテナをビルド
$ docker-compose build
# DBの初期化
$ docker-compose run --rm rails bundle exec rails db:reset
# コンテナの起動
$ docker-compose up
コンテナの停止は、Ctrl+Cで行います。
chatwootへアクセス
コンテナ起動後、ブラウザからhttp://(IPアドレス):3000
にアクセスします。
ログイン画面が表示されるので、john(atmark)acme.inc / 123456でログインします。
(atmarkは記号に置き換えてください)