Tag: heroku

如何在Heroku上与Node.js交streamWeb和Worker dynos?

Web Dynos可以处理HTTP请求 当Web Dynos处理它们时, 工作者Dynos可以从中处理作业。 但是我不知道如何让Web Dynos和Worker Dynos互相沟通。 例如,我想通过Web Dynos接收HTTP请求 ,把它发送给工人Dynos ,处理作业并将结果发送给Web Dynos ,在网上展示结果。 这是可能的Node.js? (用RabbitMQ或Kue等)? 我在Heroku文档中找不到一个例子 还是应该在Web Dynos中实现所有代码,并只能扩展Web Dynos ?

Heroku错误H14(没有web进程运行)

很确定有些人之前遇到过这个问题。 遵循所有的说明来设置节点和NPM。 当推到heroku没有错误。 但是当我打开应用程序,它显示“应用程序错误” heroku ps 回报 Process State Command ——- ——— ———— main.1 up for 1m node main.js 而 heroku logs 回报 Error H14 (No web processes running) -> GET mewtwo.herokuapp.com/ dyno= queue= wait= service= status=503 bytes= 我试着用heroku restart启动应用程序,但仍然得到相同的错误。 谷歌周围,没有其他的解决scheme,而不是heroku restart 。 任何人试过其他方法? 答:(我把它放在这里,因为我的代表太低,无法发布答案) 好吧,终于自己想出来了。 显然在Procfile中,我宣称 main: node main.js 但是Heroku使用 web: node main.js 我认为命名可以是任何你想要的,但实际上它是严格的,至less现在,你需要使用networking来工作(heroku并没有强调这一点 […]

什么是Procfile? 和networking和工作者

是否有必要在Procfile中提供“工作人员”信息? 如果是,那么它是什么 – 无法find关于这个好文章。 我希望你们有想法。 我已经在Procfile中添加了web:node server / server.js详细信息。 任何帮助,将不胜感激!

如何将使用Webpack的节点部署到heroku

我正在使用webpack。 另外我不提交npm_modules文件夹和公共文件夹,其中所有生成的文件。 我无法弄清楚如何构build我的应用程序(我有webpack构build命令)后部署和安装我的服务器(它已经在寻找公共文件夹)。 上传前提交我似乎不是一个好主意。 也许有一些温和的决定…任何想法? 分叉: 如何将使用Gulp的节点部署到heroku

我可以在heroku上设置socket.io聊天吗?

我有一个简单的socket.io聊天应用程序,我已经上传到新的Heroku'雪松'堆栈之一。 现在我几乎有所有的工作,但我已经遇到了一个绊脚石。 在我的本地主机上,我从客户端打开一个到套接字服务器的连接: // lots of HTML omitted socket = new io.Socket('localhost', {port: 8888}); 但是在Heroku上,我显然必须用别的东西替代这些值。 我可以从服务器上的过程对象获取端口,如下所示: port = process.env.PORT || 8888 并传递给视图。 但是,我用什么来代替'localhost'呢?

如何使用MongoDB在Heroku上托pipe我自己的Parse Server?

(为了清楚起见,我问这个问题,以便提供我发现的答案,以帮助那些同样受到Parseclosures影响的人) Parse.com最近宣布,他们将于2017年1月份closures店面,但幸运的是,他们已经将他们的Parse Server软件开源,所以我们都可以托pipe我们自己的Parse服务器实例。 我已经研究了可用于托pipeparsing服务器的各种选项,并决定在Heroku上托pipe我的 我喜欢Parse,因为它很容易使用,而且我没有设置后端的真实经验。 我试图在网上关注几个指南,但是发现它们有点难以理解,模糊的步骤或步骤使您在另一个网站上的兔子洞中安装了一堆工具,这一切都变得混乱起来。 如何在Heroku上托pipeParse Server,将其设置为接受来自应用程序的跨域请求,创buildMongoDB数据库,并将所有数据从Parse迁移到新数据库?

我如何在heroku命令行上调用npm(安装bower组件)?

Bower是用于客户端JavaScript的,npm是服务器端的,读取一个component.json文件来识别应该在部署时获取的依赖关系,所以我很高兴它可以在slug编译的时候运行。 不幸的是,我不能从Heroku控制台或一次性命令( heroku run "npm help" )( heroku run bash – > npm help )调用npm或bower,因为它可能是ruby的耙子。 我已经把npm和node(最新/ x版本)放在我的package.json但在引擎部分,而不是依赖。 我认为这可以通过定制节点构build包来解决,但是我认为这个过于繁重的任务只是为了激活一些显而易见的东西。

在Heroku中使用npm和Node的Git依赖关系

我有这个package.json文件: { "name": "application-name" , "version": "0.0.1" , "private": true , "dependencies": { "coffee-script": "1.1.3" , "express": "2.5.0" , "less": "1.1.5" , "jade": "0.17.0" , "connect-redis": "1.2.0" , "hiredis": "0.1.13" , "redis": "0.7.1" , "bcrypt": "0.4.1" , "promised-io": "0.3.0" , "jugglingdb": "git://github.com/juggy/jugglingdb.git#master" , "nodemailer": "0.2.3" } } 我想部署到Heroku。 它在npm版本1.0.105本地正常工作,但它扼住了Heroku(我更新了npm到1.0.105): —–> Heroku receiving push —–> Fetching […]

Heroku + Node:找不到模块错误

我的Node应用程序在本地运行良好,但在部署到Heroku时出现错误。 该应用程序在/models文件夹中使用Sequelize,其中包含index.js , Company.js和Users.js 。 在本地,我可以使用/models/index.js的以下代码导入模型: // load models var models = [ 'Company', 'User' ]; models.forEach(function(model) { module.exports[model] = sequelize.import(__dirname + '/' + model); }); 这工作正常,但是,当我部署到Heroku的应用程序崩溃与以下错误: Error: Cannot find module '/app/models/Company' at Function.Module._resolveFilename (module.js:338:15) at Function.Module._load (module.js:280:25) at Module.require (module.js:364:17) at require (module.js:380:17) at module.exports.Sequelize.import (/app/node_modules/sequelize/lib/sequelize.js:219:24) at module.exports.sequelize (/app/models/index.js:60:43) at Array.forEach (native) at Object.<anonymous> […]

允许CORS REST请求到Heroku上的Express / Node.js应用程序

我在node.js的快速框架上编写了一个REST API,这个框架适用于Chrome中js控制台的请求和URL栏等等。我现在试图让它适用于来自另一个应用程序的请求域(CORS)。 第一个由javascript前端自动创build的请求是/ api / search?uri =,并且在“预检”选项请求中显示为失败。 在我的快速应用程序中,我添加CORS标题,使用: var allowCrossDomain = function(req, res, next) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS'); res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, Content-Length, X-Requested-With'); // intercept OPTIONS method if ('OPTIONS' == req.method) { res.send(200); } else { next(); } }; 和: app.configure(function () { app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(app.router); app.use(allowCrossDomain); app.use(express.static(path.join(application_root, "public"))); app.use(express.errorHandler({ dumpExceptions: true, showStack: true […]