2

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

我知道有用于在 Heroku 上安装 Strongloop 的构建包。部署实际应用程序是通过 git push 完成的。

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

  • 我怎样才能(或多或少)在本地和 Heroku 拥有相同的环境。
  • 设置好 Strongloop Node 后,服务器环境是否还在原地?还是每次我部署更新时都会重新创建它?(如果是,怎么会?)
  • slnode如何融入图片
  • 我可以从开发机器连接到 Heroku 托管的数据库吗?

我希望这个问题的答案可以为像我这样努力理解所有部分如何组合在一起的人提供指导。

4

2 回答 2

1

我知道有用于在 Heroku 上安装 Strongloop 的构建包。部署实际应用程序是通过 git push 完成的。

您不需要我们的 buildpack,是的,您使用 git push 进行部署。

我怎样才能(或多或少)在本地和 Heroku 拥有相同的环境。

多多少少?你可以在你的 Mac 笔记本电脑上开发,然后推送到 Heroku,使用相同版本的节点,或者你可以更像 Heroku,使用 Linux,或者......你想复制 Heroku 环境到底是什么?

设置好 Strongloop Node 后,服务器环境是否还在原地?还是每次我部署更新时都会重新创建它?(如果是,怎么会?)

不确定您指的是什么设置。

slnode如何融入图片

它没有。

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

不知道,抱歉,请尝试 Heroku 支持页面来解决这种特定于 Heroku 的技术问题,也许?

我在http://docs.strongloop.com/display/DOC/Heroku的页面底部关注了文档,查找“创建 Procfile 并部署”,它对我来说工作正常。

于 2013-12-10T21:30:15.303 回答
0

快速解答

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

构建包

我不确定构建包的实际限制,但它几乎可以做任何你可以在 Debian 6 虚拟化环境中使用共享内核做的事情。(OpenVZ VPS 中的 Debian 6 实例)

  • 将构建包视为解决依赖关系的低级依赖关系管理器,如 node.js、Redis、Apache2 等。
  • 他们还构建了一个环境,如文件系统结构、ENV 变量等。

Heroku 基础设施

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

Heroku 在原始操作系统之上构建 dynos,据猜测,它在至少 128 个 dynos 之间共享一个操作系统。

每个 dyno 都与其他 dyno 隔离,它具有内置的通用软件ls,但构建包的职责是为您的应用程序安装任何其他软件,如 Node.js。

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

于 2013-08-02T21:29:07.033 回答