0

我正在尝试在我现有的微服务架构中开始使用 NoFlo,并且我想从 HTTP 服务器开始,以便我可以将它安装在我的代理上并使用它进行播放/测试。

您可以在此处找到存储库。

我正在使用 Docker (Compose) 来管理一些服务(使用Dockerfilestart-docker.sh),但它们也都有本地启动脚本(start-local.sh)。这两个脚本都运行 NPM 脚本以使用注入的 ENV 变量启动服务器。

我有一些问题:

  1. 应用程序的起点应该是server.js文件还是.fbp图表?
  2. 我在我的服务器上放了什么package.json来启动服务器?
  3. 当我使用 Docker Compose 启动所有 Docker 容器并且 NoFlo 服务器正在运行时,我能否使用 Flowhub.io 对 HTTP 服务器进行编程?
4

1 回答 1

0

无论您是想使用自定义 Node.js 脚本(并在其中嵌入 NoFlo)来运行您的流程,还是将 NoFlo 作为顶级控制流运行,都没有那么重要。

对于前一种情况,构建并运行您的 Docker 镜像,就像您运行任何其他 Node.js 镜像一样。

对于后一种情况,您可能希望通过noflo-nodejs执行图形。如果您想让图形从外部实时可编程(例如Flowhub),您还应该公开 FBP 协议端口。

您可以在此处找到通过 Docker 运行 NoFlo 图的简单示例: https ://github.com/flowhub/bigiot-bridge/blob/master/Dockerfile

为了更轻松地在 Docker 中运行与在本地运行之间切换,一个很好的选择是将noflo-nodejs命令作为start脚本放在package.json.

于 2017-11-24T12:28:39.467 回答