linux系统下nodejs启动

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux系统下nodejs启动相关的知识,希望对你有一定的参考价值。

问题描述的有点简单,再补充下:
我在Windows系统下开发了一个以AngularJs和NodeJs技术实现的项目,用npm start启动访问没问题,现在迁移到Linux(CentOS)下不知道怎么启动项目了,想请教下!

参考技术A

跟你在windows是一致的。

1、安装指定版本的node.js(服务器基本软件的安装)

你可以到nodejs org官网上面找到相对的tar.gz文件包,下载然后进行源码安装。如果对版本要求不高,可以直接用包管理器进行安装(如centos,Linux下的软件安装可以参考linuxprobe.com)

yum install nodejs npm

2、上传代码到服务器(略过,楼主已经同步代码到服务器)

3、安装项目依赖的模块

> npm install

4、启动应用

> npm start

几个需要注意的点:

1、运行权限:注意做好应用之间的隔离(使用低权限用户、文件系统隔离等),避免应用崩溃导致系统宕机等风险

2、80端口:通过nginx等进行反向代理,应用本身占用1024之后的端口(无需root权限)

3、Node也提供了守护进程的解决方案:如pm2、forever、supervisor等~

[原创]PM2使nodejs应用随系统启动

1、安装

npm install pm2 -gd

2、启动

pm2 start ./bin/www

3、pm2 save

4、pm2 startup

5、pm2 save

注:上面几个步骤有几个坑:

1、从第二步开始,要进入root权限操作。不同用户下的pm2 list 是不同的;

2、还是第二步,有的说pm2 start app.js,当时试了很久也没起来,所以还是自己多看看,由于linux和node框架版本问题造成一些细微差别还需要不断尝试来解决,不可能任何东西都是网上现成的东西;

3、pm2 startup 这步有的说要加centos ubuntu之类的,其实要根据系统提示操作,不是一成不变的,我centos6.5系统直接没有参数;

4、重启之后如果起不来,检查数据库服务是不是开机启动了。以mongodb为例子,需要在/etc/rc.local 里添加启动mongod启动的命令:/data1/wbact/mongodb-linux-x86_64-rhel55-3.2.12/bin/mongod -dbpath=/data1/wbact/mongodb-linux-x86_64-rhel55-3.2.12/data/db -logpath=/data1/wbact/mongodb-linux-x86_64-rhel55-3.2.12/data/logs --logappend      ---------这么一串只是举个例子,以后目录名不要这么长。

 

以上是关于linux系统下nodejs启动的主要内容,如果未能解决你的问题,请参考以下文章

linux系统下nodejs的多种安装方式

Linux系统(Centos)下安装nodejs并配置环境

Linux(Ubuntu)下安装NodeJs

我如何从nodejs重新启动linux

Linux系统下安装node

[原创]PM2使nodejs应用随系统启动