如何在Heroku上使用Strongloop部署Node.js应用程序?
有实际经验的人可以解释这些层如何相互作用,以及如何设置工作设置(开发生产)实际上应该设置?
我知道有一些buildpack可以在Heroku上安装Strongloop。 而部署实际的应用程序是用git push完成的。
您可以解决的一些具体问题
- 我怎么能(或多或less)在本地和在Heroku有相同的环境。
- 设置Strongloop节点后,服务器环境是否保持原状? 还是每次部署更新时都会重新创build? (如果是的话,怎么样?)
- slnode如何适合图片
- 我可以从开发机器连接到Heroku托pipe的数据库吗?
我希望这个问题的答案可以作为一个像我这样的人,正在努力去理解所有的东西在一起。
快速的答案
- 使用Vagrant,下载一个Debian 6盒子,然后安装任何你需要的东西,记得检查Node.js Heroku使用的版本。
- 它将被部分重build,你的npm依赖将被重新载入,你的应用程序被重build等等。
- 你可以在你的开发机器上使用
slnode
。 但是,如果有必要在slnode
上使用slnode
,请分叉构build包并将slnode
作为其一部分安装。 - 您可以从任何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和部署”,它对我来说工作正常。