我有一个网络应用程序,我从github设置了持续部署。但是,我计划在这个应用程序中添加一些工作者角色,我想知道几件事情。我使用Node.js。
在我看来,我有这样的设计:
所以我的问题是?
/web
和/worker
个文件夹,这些文件夹具有不同的app.js
和package.json
文件,因此我将它们放在同一个仓库中,但它们的依赖关系管理方式不同。在部署到Heroku时如何才能完成这项工作? 答案 0 :(得分:1)
看起来这完全有可能。您需要做的就是拥有一个全局package.json
文件来管理您的依赖项(您无法使用worker和Web角色管理单独的依赖项)。如果package.json
不足以让heroku检测到您正在使用Node.Js
这是我遇到的问题;添加heroku/nodejs
的buildpack,你应该没问题。无论安装什么buildpack,它都可以在worker角色上使用。
关于不同的目录,这就是我现在所拥有的:
/web
/worker
/package.json
/Procfile
我的procfile是:
web: npm start --prefix /web
worker: npm start --prefix /worker
似乎解决了启动问题。在Procfile中没有任何设置#of dynos的方法。