比较不同的 PaaS 平台上的 Node.js 支持(3)

希望微软在这里还能有更多的自定义的东西,因为当有些文件被添加进代码中(名为azure_error and iisnode.yml),CLI会自动通过npm安装同时也会通过git部署。

Azure运行的是0.8.2这个版本,不过这个版本号可以在package.json文件中重新配置。

注意事项和仪表板

帐户创建过程是迄今为止最乏味的包括短信验证一个Windows Live帐户和一个单独用于部署的Git帐户但总体而言,Azure平台的巨大范围来看,仪表板是相当不错的他们支持日志文件至于我可以告诉Heroku唯一这么做的供应商

Azure dashboard

dotCloud

支持多国语言.就像Nodejitsu一样, 他们最近取消了他们的免费服务,所以在开始使用之前需要绑定一张信用卡.

参数配置

参数的设置通过CLI或者一个dotcloud.yml文件设置.

监听端口需要设置为8080.

部署

dotClouds CLI使用Python编写的, 同时使用rsync在每次部署的时候最小化你要上传的数据. 为了帛书,你需要配置supervisord.conf和dotcloud.yml文件。

目前, dotCloud的版本为 0.6.20. Ouch.

注意事项和控制面板

早期的时候我感到非常的愤怒,当他们进行一些重大修改却几乎没有警告的时候。我猜这就是生活在一个beta的世界,但是我一直没有急着跑回来。

dotCloud dashboard

Engine Yard

就像Heroku一样, Engine Yard 也是通过Ruby on Rails来托管的。 不过不一样的是, 我们对于安装和环境配置拥有更多的选择。有服务器管理经验的人会觉得Engine Yard更像直接操作某台服务器,不过这仍然是PaaS。

变量配置

我们可以通过npm模块ey_config来配置环境变量。Engine Yard还支持通过SSH来访问你的机器,那样我们就可以直接创建config.json并放到一个正确的地方。

部署

这个是通过git来部署的,不过package.json文件中的node版本号最多只支持0.8.11。

注意事项和控制面板

当我们创建了一个应用,我们需要选择nginx(推荐)作为前端代理或者使用Node.js,后者支持WebSockets。

当我第一次部署失败,会弹出一个可以输入手机号的窗口。

Engine Yard dashboard

OpenShift.com

OpenShift 一个主要由Red Hat维护的开源项目, OpenShift.com是一个托管式服务的平台(像WordPress.org 和 WordPress.com).

配置变量

OpenShift.com 支持用SSH连接你的电脑,这意味着你可以新建 config.json 并把它放到合适的地方. 否则, 没有特殊的命令来预先定义配置文件.

端口是 process.env.OPENSHIFT_INTERNAL_PORT || 8080.

部署

用git操作,如果你不是基于网页的GUI的粉丝,尽管有 CLI 用来创建和管理项目. 你需要先将你的公共SSH key加到你的账户中,这是不包括在node.js快速进阶样例的一步。

package.json文件中的node版本号会被忽略,它会默认使用v0.6.20,不过你可以通过额外的操作来改变它

注意事项和控制面板

之前我对于获取示例应用有些问题,所以我重新开始并让OpenShift用他们的示例文件填充git仓库。这里小小的提示一下,包括deploy hook和一些配置文件都在openshift目录下,README文件展示了结构并说明每个文件的意义。

但是我仍然对监听一个特定IP地址感到困惑,就如下面的:

var ipaddr = process.env.OPENSHIFT_NODEJS_IP || "127.0.0.1";

然后在server.js文件的app.listen中添加 ipaddr, 就像这样:

app.listen(app.get('port'), ipaddr, function(){...

我已经和OpenShift相关人员进行了沟通,他们也将更新入门指南让这部分内容更加得通俗易懂。

OpenShift dashboard

CloudFoundry

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/19513.html