docker-compose - hubot Rocketchat 适配器无法工作

标签 docker-compose hubot rocket.chat

我在 Digitalocean Droplet (Ubuntu) 上安装了 Rocket.chat 和 hubot,现在我正在尝试让 hubot 说话:

当我运行时:

hubot -a Rocketchat

我得到:

错误无法加载适配器 Rocketchat - 错误:找不到模块“hubot-rocketchat”

这可能是什么原因?

这是我的 docker-compose.yml:

db:
  image: mongo
  volumes:
    - ./data/runtime/db:/data/db
    - ./data/dump:/dump
  command: mongod --smallfiles

rocketchat:
  image: rocketchat/rocket.chat:latest
  environment:
    - MONGO_URL=mongodb://db:27017/rocketchat
    - ROOT_URL=https://xxxxxxxxx:3000
    - Accounts_UseDNSDomainCheck=True
  links:
    - db:db
  ports:
    - 3000:3000

hubot:
  image: rocketchat/hubot-rocketchat:v0.1.4 # rocketchat/hubot-    rocketchat
  environment:
    - ROCKETCHAT_URL=http://xxxxxxx:3000
    - ROCKETCHAT_ROOM=
    - LISTEN_ON_ALL_PUBLIC=true
    - ROCKETCHAT_USER=alicja
    - ROCKETCHAT_PASSWORD=xxxxx
    - BOT_NAME=alicja
    - EXTERNAL_SCRIPTS=hubot-help,hubot-seen,hubot-links,hubot-    greetings, example.coffee
  links:
    - rocketchat:rocketchat
# this is used to expose the hubot port for notifications on the host     on port 3001, e.g. for hubot-jenkins-notifier
  ports:
    - 3001:8080

编辑:

我使用 docker-compose 重新安装了 hubot 和 Rocket.chat,现在看起来 bot 已连接到 Rocket-chat(绿灯),但它没有响应(尝试 @botname 帮助)。

同样,这是我的 docker-compose.yml:

http://pastebin.com/rYrRGqfz

预先感谢您的帮助。

编辑2

好的。 Hubot 已启动。我必须改变:

image: rocketchat/hubot-rocketchat:v0.1.4

至:

image: rocketchat/hubot-rocketchat:latest 

在 .yml 的 hubot 部分

当 Rocketchat imagee Rocketchat image_和 _hubot image 不同时,显然存在问题(DUH...)

但是我如何通过 docker-compose 启动 hubot 服务呢?例如。我应该在哪里(文件夹位置)运行 npm install [脚本名称] 将其添加到 hubot? .yml 文件所在的同一文件夹?

如何自定义脚本?他们位于哪里?

最佳答案

上面有两个问题:

  • 如何运行hubot

    • 更改 docker-compose.yml,其中显示 - ROCKETCHAT_URL=xxx.xxx.xxx.xxx:3000将其更改为 - ROCKETCHAT_URL=rocketchat:3000 。您应该通过容器中的链接连接到 hubot。

    • 确实,您应该使用 hubot-rocketchat:latest Rocket.Chat版本高于0.37

  • 如何使用自己的脚本进行自定义

    • 您必须将卷从主机映射到容器。您可以通过添加 volumes: 来做到这一点到你的 docker-compose.yml。如果您的自定义脚本位于 scripts 中文件夹,与 docker-compose.yml 位于同一目录中,您可以像这样添加它:
  volumes:
    - ./scripts:/home/hubot/scripts

我的 docker-compose.yml 示例可以在这里找到:http://pastebin.com/KKX0Kuma

关于docker-compose - hubot Rocketchat 适配器无法工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39879968/

相关文章:

heroku - 通过 Curl 发布到 Hubot

linux - Rocket.chat问题

node.js - Rocket Chat - 文件上传堆栈为 0%

file-upload - Docker Rocket chat Rest api上传文件报错413 Entity too large

docker - 如何使用 docker-compose 将容器部署到谷歌云?

linux - 为什么我的端口没有暴露?包括 netstat 输出

node.js - Hubot CronJob函数

node.js - 返回发送给Hubot的原始消息

docker - 容器变换给出缺少图像参数错误

mysql - docker-compose mysql 导入失败 - 输入设备不是 TTY