如果你在企業的層層Firewall之後連接Slack之後,可以考慮爲團隊搭建一個Rocket.Chat服務,實現類似Slack的團隊聊天功能。本文使用的方法適合於快速試用一下Rocket.Chat服務,如果是用於正式環境,還請參考官方文檔。
安裝並啓動Rocket.Chat服務器
可以使用Docker Compose在本地安裝一個Rocket.Chat服務,在目錄中新建一個docker-compose.yml文件。
db:
image: mongo
command: mongod --smallfiles
rocketchat:
image: rocketchat/rocket.chat
environment:
- MONGO_URL=mongodb://db:27017/rocketchat
- ROOT_URL=http://localhost:3000
- Accounts_UseDNSDomainCheck=False
links:
- db:db
ports:
- 3000:3000
hubot:
image: rocketchat/hubot-rocketchat
environment:
- ROCKETCHAT_URL=rocketchat:3000
- ROCKETCHAT_ROOM=GENERAL
- ROCKETCHAT_USER=Hubot
- ROCKETCHAT_PASSWORD=BotPassw0rd
- BOT_NAME=Hubot
- EXTERNAL_SCRIPTS=hubot-help,hubot-seen,hubot-links,hubot-greetings
links:
- rocketchat:rocketchat
ports:
- 3001:8080
使用命令docker-compose up啓動服務。如果你用的也是Docker for Windows,在瀏覽器中打開http://localhost:3000,就可以訪問Rocket.Chat服務了;如果你用的是Docker Toolkit,請使用相應的IP替換localhost。按照界面的提示配置第一個管理員用戶,你就可以在頻道中說話了。
添加Hubot機器人
在以上的docker-compose中,除了啓動mongo數據庫和rocketchat服務之外,還啓動了一個hubot機器人服務。需要一些額外的步驟,將Hubot機器人添加到頻道中。
1. 點擊左上角的展開按鈕,點擊Administration進入管理界面
2. 在Users界面中添加一個用戶,使用docker-compose.yml中配置的用戶名和密碼,注意圖中按鈕指示的位置
3. 重啓一下hubot服務,回到general頻道,就可以和Hubot機器人在General頻道里聊天了。
在Leanpub上一篇樣章很好的介紹了Hubot腳本編程,大家可以參考:https://leanpub.com/automation-and-monitoring-with-hubot/read
參考資料
1. https://rocket.chat/docs/installation/docker-containers/