2017-04-19 112 views
1

我在Github上有一个node.js应用程序。我之前从未做过任何VPS部署,我正在学习中。从Github将我的node.js应用程序部署到VPS

我使用Hostinger.in的VPS,使用的操作系统是Ubuntu 14.04。到目前为止,这是我做了什么:

  1. 连接到它们的SSH成功​​地从我的终端
  2. 安装的node.js服务器[https://www.hostinger.com/tutorials/vps/how-to-install-node-js-on-ubuntu]
  3. 安装的Git在服务器上[https://www.hostinger.com/tutorials/how-to-install-git-on-ubuntu]

我找不到任何联机资源来将我的node.js部署到Hostinger VPS,因此我正在为DigitialOcean编写这些资源。

的一个教程中,我跟着是这样的:https://code.tutsplus.com/tutorials/setting-up-continuous-integration-continuous-deployment-with-jenkins--cms-21511

我克隆我的仓库做:

​​

,似乎它被部署(没有给我任何错误)。 我在服务器上所做的所有安装都是以root用户身份执行的。到目前为止,我还没有创建任何单独的用户来执行任何这些任务。

给我的服务器主机名是dangerous-pigs.com。现在我假设我的node.js应用程序已部署,但是当我转到dangerous-pigs.com时,它向我显示服务器未找到错误。

我也永远安装我节点应用程序,当我运行

forever start app.js 

它说:

warn: --minUptime not set. Defaulting to: 1000ms 
warn: --spinSleepTime not set. Your script will exit if it does not stay up for at least 1000ms 
info: Forever processing file: app.js 
error: Cannot start forever 
error: script /root/app.js does not exist. 

这意味着应用程序或者未安装或安装在非根文件夹之外的某个地方。

有很多事情正在进行,我非常困惑从哪里开始解决问题。

任何人都可以请帮助我/引导我一步一步从部署应用程序运行在dangerous-pigs.com上?

谢谢。

********************************更新************* *****************

所以,看来我得去根项目文件夹内,做

npm install --production 

之后,我做了

node app.js 

服务器似乎正在运行,但我只能访问我的应用程序,如果我对服务提供的实际IP。

因此,如果我输入http://93.188.163.249:8000 - >那是我的应用程序。

如何将其更改为指向域?

+0

你尝试'永远节点app.js'?你是否在项目目录中(尝试'cd到那里)? –

+0

您是否按照教程中提到的方法执行了'npm install --production'和'node app.js'?你是否先在本地克隆,配置应用程序(也正如教程中提到的那样)? – VonC

+0

是的,当我做npm install --production时会抛出这个错误:ENOENT:没有这样的文件或目录,打开'/root/package.json' – codeinprogress

回答

0

一些调查研究之后是我发现:

默认

目前Apache2的80端口上运行,以运行在80端口的NodeJS首先我需要做在我的Ubuntu服务器安装libcap2斌:

sudo apt-get install libcap2-bin 

之后我做

sudo setcap cap_net_bind_service=+ep /usr/bin/nodejs 

上述命令的作品,如果你有一个苹果,针对窗口的命令也许

sudo setcap cap_net_bind_service=+ep /usr/local/bin/node 

但是请确认之后再做。

此外,您的nodejs服务器需要停止,然后再进行这些更改,否则它将无法工作。在我的情况下,我忘记了停止我的节点服务器并继续运行sudo setcap命令,但它没有改变端口(原因很明显)。

如果您正在使用永远运行节点然后执行:

forever stopall 
相关问题