SitePoint将于明天发布其新书Jump JumpNode.js。 为了庆祝这本书的发行,JSPro今天为您带来了一篇特别的Node.js文章。 今天的文章将教您如何使用Nodejitsu在云中部署Node.js应用程序。
关于Nodejitsu
Nodejitsu Inc.总部位于纽约市中心,是一家云计算公司。 更具体地说,它们提供了专注于Node.js的平台即服务(PaaS)产品。 Nodejitsu还提供了可轻松在其云中部署应用程序的工具。 他们还提供了一个名为Haibu (日语为蜂巢)的免费工具,您可以使用该工具在自己的硬件上生成Node.js云。 尽管我不得不至少提及Haibu,但今天我们将针对Nodejitsu生产堆栈。
使用Nodejitsu进行注册
在使用Nodejitsu云之前,您需要注册一个帐户。 幸运的是,Nodejitsu为个人开发人员提供了免费计划。 要注册帐户,请转到Nodejitsu主页 。 找到“免费试用Nodejitsu”按钮,然后单击它。 接下来,创建一个新的用户名并提供您的电子邮件地址。 您可以选择添加计划与Nodejitsu一起部署的应用程序类型的描述。
提交注册后,您将收到一封确认电子邮件,其中包含进一步的说明。 您将需要安装Nodejitsu的命令行实用程序jitsu
。 要使用npm
安装jitsu
,请使用以下命令。 在Unix系统上,应该使用sudo
执行命令。
npm install jitsu -g
接下来,使用jitsu
确认您的帐户。 您收到的确认电子邮件中应包含与以下所示类似的命令。 运行该命令后,系统将提示您为新帐户创建密码。 创建密码后,就可以开始部署应用程序了!
jitsu users confirm your_username confirmation_code
创建一个Nodejitsu应用程序
JSPro最近发表了一篇有关在Node.js中创建非常基本的HTTP服务器的文章。 我们将使用这个简单的Web服务器作为第一个Nodejitsu应用程序。 Web服务器的代码如下所示。 将此代码添加到文件中,并将其另存为“ web_server.js”。
var http = require("http");
var server = http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/html"});
response.write("<!DOCTYPE "html">");
response.write("<html>");
response.write("<head>");
response.write("<title>Hello World Page</title>");
response.write("</head>");
response.write("<body>");
response.write("Hello World!");
response.write("</body>");
response.write("</html>");
response.end();
});
server.listen(80);
接下来,使用jitsu
部署应用程序。 下面显示了执行此操作的命令。
jitsu deploy
package.json文件
在部署您的应用程序之前,它需要一个“ package.json”文件。 在Node.js世界中,项目应包含一个“ package.json”文件,该文件指定有关该项目的元数据。 正如文件扩展名所示,“ package.json”包含JSON数据。 典型的软件包文件将包含软件包的名称,依赖项信息,版本信息以及任何其他相关的配置数据。
当您尝试部署不包含“ package.json”文件的项目时, jitsu
将在逐步完成一个简短的向导后为您创建一个项目。 下面显示的清单包含相关的向导数据。 App name
是您的应用程序的名称。 您将使用subdomain
在线访问您的应用程序,因此它应包含您的用户名。 scripts.start
字段表示用于启动应用程序的脚本文件。 version
字段代表您的应用程序的版本。 最后,我们不需要为engines.node
指定值,因为任何0.8版本都可以满足我们的目的。
App name: web_server subdomain: webserver.your_username scripts.start: web_server.js version: 1.0.0 engines.node: (0.8.x)
完成向导后,package.json文件应类似于以下所示。
{
"scripts": {
"start": "web_server.js"
},
"version": "1.0.0",
"engines": {
"node": "0.8.x"
},
"name": "web_server",
"subdomain": "webserver.your_username"
}
最后,键入“ yes
以确认设置。
结论
如果一切配置正确,您的Web服务器现在应该在Nodejitsu云中运行。 您可以通过导航到http:// subdomain .jit.su
来访问服务器。 您应该用“ package.json”文件中的subdomain
值替换subdomain
。 例如,我的服务器在http://webserver.cjihrig.jit.su上运行。
当然,这只是Nodejitsu冰山一角。 我建议尝试jitsu
。 例如,通过键入jitsu apps
可以获取用于管理应用程序的命令列表。 您还应该查看Nodejitsu手册 。
我们的JSPro读者中有没有使用Nodejitsu的经验?
From: https://www.sitepoint.com/cloud-deployment-of-node-js-applications-with-nodejitsu/