docker
Slack
centos7
docker-compose
Rocket.Chat

RocketChatとは

12508788.png

このところビジネス向けチャットツールとしてslackが人気ですね。RocketChatは、slackのようなチャット機能を有する(というかslackを模して設計されている)OSSのツールです。Meteorフレームワークを使用したjsで書かれています。RocketChatの嬉しい点として、オンプレ環境で稼働することが挙げられます。slackはクラウド型のサービスなので、機密情報のやりとりをする上ではオンプレの方が安心だと考える人もいるでしょう。
RocketChatはdockerイメージとしても提供されているため、比較的容易に導入することができます。

毎朝出社したらメールチェックが日課になっている企業も多いと思いますが、このようなツールが企業や業界に浸透してメールチェックの煩わしさから解放されるようになれば良いですねぇ。。。

構築手順

dockerとdocker-composeはあらかじめ導入しておいてください。

構築に必要な資材はRocketChat本体とmongoDBを使用します。どちらもdocker hubからpullできるので簡単です。

イメージのpull
docker pull rocketchat/rocket.chat:latest
docker pull mongo:latest
docker images # イメージがpullできていることを確認
docker-compose.yml
db:
  image: mongo:latest
  volumes:
    - ./data/runtime/db:/data/db
    - ./data/dump:/dump

rocketchat:
  image: rocketchat/rocket.chat:latest
  environment:
    - MONGO_URL=mongodb://db:27017/rocketchat
    - ROOT_URL=http://localhost
    - Accounts_UseDNSDomainCheck=false
  links:
    - db:db
  ports:
    - 3000:3000

docker-compose.ymlにはRocketChatとmongoDBを連携させる記述をしています。
RocketChatのサービスポート番号はデフォルト3000番です。環境に合わせて適宜変更しても構いません。

サービスの起動

docker-compose.ymlファイルを配置したディレクトリにcdし、下記を実行してサービスを起動します。
docker-compose up -d
問題なく起動できたらブラウザからアクセスしてみます。
http://localhost:3000
RocketChatの画面が表示されたら成功です!