如何在Heroku上使用Strongloop部署Node.js应用程序?

有实际经验的人可以解释这些层如何相互作用,以及如何设置工作设置(开发生产)实际上应该设置?

我知道有一些buildpack可以在Heroku上安装Strongloop。 而部署实际的应用程序是用git push完成的。

您可以解决的一些具体问题

  • 我怎么能(或多或less)在本地和在Heroku有相同的环境。
  • 设置Strongloop节点后,服务器环境是否保持原状? 还是每次部署更新时都会重新创build? (如果是的话,怎么样?)
  • slnode如何适合图片
  • 我可以从开发机器连接到Heroku托pipe的数据库吗?

我希望这个问题的答案可以作为一个像我这样的人,正在努力去理解所有的东西在一起。

快速的答案

  1. 使用Vagrant,下载一个Debian 6盒子,然后安装任何你需要的东西,记得检查Node.js Heroku使用的版本。
  2. 它将被部分重build,你的npm依赖将被重新载入,你的应用程序被重build等等。
  3. 你可以在你的开发机器上使用slnode 。 但是,如果有必要在slnode上使用slnode ,请分叉构build包并将slnode作为其一部分安装。
  4. 您可以从任何networking连接的服务器或PC连接到Heroku上托pipe的数据库,您将提供一个IP和凭据。

构build包

我不确定构build包的实际限制,但它几乎可以做任何事情,您可以在具有共享内核的Debian 6虚拟化环境中执行任何操作。 (OpenVZ VPS中的Debian 6实例)

  • 可以将构build包看作是解决像node.js,Redis,Apache2等依赖关系的低级依赖pipe理器。
  • 他们还构build了一个像文件系统结构,ENVvariables等等的环境。

Heroku基础设施

Heroku使用AWS作为原始硬件提供商,AWS在虚拟化硬件(VPS)中提供全新的操作系统安装,

Heroku在原始操作系统之上build立了dynos, 据猜测,它至less在128个dynos之间共享一个操作系统。

每个testing仪与其他testing仪都是隔离的,它具有像ls一样的内置通用软件,但是构build包有责任为您的应用程序安装任何其他类似Node.js的软件。

Heroku的节点构build包,安装Node.js,并运行npm。

我知道有一些buildpack可以在Heroku上安装Strongloop。 而部署实际的应用程序是用git push完成的。

你不需要我们的buildpack,是的,你用git push来部署。

我怎么能(或多或less)在本地和在Heroku有相同的环境。

多less或多less? 您可以在Mac笔记本电脑上开发,使用相同版本的节点推送到Heroku,或者您可以更像Heroku,并使用Linux,或者…您希望重现Heroku env究竟是什么?

设置Strongloop节点后,服务器环境是否保持原状? 还是每次部署更新时都会重新创build? (如果是的话,怎么样?)

不知道你指的是什么设置。

slnode如何适合图片

它不。

我可以从开发机器连接到Heroku托pipe的数据库吗?

不知道,对不起,试试Heroku支持页面为这种heroku特定的技术问题吧?

我在http://docs.strongloop.com/display/DOC/Heroku页面底部跟随文档,find“创buildProcfile和部署”,它对我来说工作正常。