linux系统下nodejs启动
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux系统下nodejs启动相关的知识,希望对你有一定的参考价值。
问题描述的有点简单,再补充下:
我在Windows系统下开发了一个以AngularJs和NodeJs技术实现的项目,用npm start启动访问没问题,现在迁移到Linux(CentOS)下不知道怎么启动项目了,想请教下!
跟你在windows是一致的。
1、安装指定版本的node.js(服务器基本软件的安装)
你可以到nodejs org官网上面找到相对的tar.gz文件包,下载然后进行源码安装。如果对版本要求不高,可以直接用包管理器进行安装(如centos,Linux下的软件安装可以参考linuxprobe.com)
yum install nodejs npm2、上传代码到服务器(略过,楼主已经同步代码到服务器)
3、安装项目依赖的模块
> npm install4、启动应用
> 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启动的主要内容,如果未能解决你的问题,请参考以下文章