这里分享一下,给遇到问题的朋友。同时也分享下服务器安全的一些小配置。 1、在root权限下,新建一个node用户 useradd node
2、创建密码 passwd node 后提示输入密码。
3、加入sudoers visudo 在 ## Allow root to run any commands anywhere root ALL=(ALL) ALL 这里,加入 node ALL=(ALL) ALL 按esc后,输入:wq保存。
4、提一下用yum安装nodejs,不用源码编译。 安装nodejs 4.x LTS的 先 curl --silent --location https://rpm.nodesource.com/setup_4.x | bash - (参考这里 https://nodejs.org/en/download/package-manager/#enterprise-linux-and-fedora)
然后 yum clean all,最好reboot一下 yum install nodejs,检查一下是不是4.2.X版本,再同样。 安装后 node -v 检查一下。
这种方法安装的node的路径会不同,直接就在/usr/bin下了,如果是源码编译的,会在/usr/local/bin下
5、如果是用4的方法安装的node,就可以跳过 以下适用与源码编译的nodejs,做link sudo ln -s /usr/local/bin/node /usr/bin/node sudo ln -s /usr/local/lib/node /usr/lib/node sudo ln -s /usr/local/bin/npm /usr/bin/npm sudo ln -s /usr/local/bin/node-waf /usr/bin/node-waf
6、安装pm2 pm2 delete all pm2 dump NODE_ENV=production; pm2 start app.js 等一会,稳定后, pm2 save sudo pm2 startup centos -u node (这条命令后,有一段提示,要按照提示输入下一条命令,请注意看啊) su -c “chmod +x /etc/init.d/pm2-init.sh; chkconfig --add pm2-init.sh" 然后编辑PM2_HOME sudo vi /etc/init.d/pm2-init.sh export PM2_HOME=”/home/node/.pm2"
我的/etc/rc.d/init.d/pm2-init.sh大致如下: NAME=pm2 PM2=/usr/lib/node_modules/pm2/bin/pm2 USER=node
export PATH=/usr/bin:$PATH export PM2_HOME="/home/node/.pm2"
lockfile="/var/lock/subsys/pm2-init.sh"
6、重点!! chattr +i /home/node/.pm2/dump.pm2 因为这货会在重启后被清空,然后就不能自启动了。
7、重启试试
参考: http://www.hkpug.net/2014/09/18/安裝-centos-7-後必做的七件事/ http://kongfangyu.com/2015/12/03/aliyun-nodejs/ https://github.com/Unitech/pm2/issues/1521