CentOS 编译安装 Nodejs (实测 笔记 Centos 7.3 + node 6.9.5)
环境:
系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡)
系统版本:CentOS-7.0-1406-x86_64-DVD.iso
安装步骤:
1.准备
1.1 显示系统版本
[root@centos ~]# cat /etc/redhat-release
CentOS Linux release 7.3.1611 (Core)
[root@centos ~]# uname -r
3.10.0-514.6.1.el7.x86_64
1.2 安装基本软件包
[root@centos ~]# yum install vim wget lsof gcc gcc-c++ -y
1.3 显示IP地址
[root@centos ~]# ip addr|grep inet
inet 127.0.0.1/8 scope host lo
inet 192.168.1.10/24 brd 192.168.1.255 scope global ens160
2.安装nodejs
2.1 安装依赖
[root@centos ~]# yum install openssl-devel -y
2.2 安装nodejs
[root@centos ~]# cd /usr/local/src/
[root@centos ~]# wget https://nodejs.org/dist/v6.9.5/node-v6.9.5.tar.gz
[root@centos ~]# tar -zxvf node-v6.9.5.tar.gz
[root@centos ~]# cd node-v6.9.5
[root@centos ~]# ./configure --prefix=/opt/node/6.9.5
[root@centos ~]# make && make install
添加软连接,否则服务没法启动
[root@centos ~]# ln -s /opt/node/6.9.5/bin/node /usr/local/bin/node
2.3 配置NODE_HOME 进入profile编辑环境变量
[root@centos ~]# vim /etc/profile
找到export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL
在这行上面添加以下内容
#SET FOR NODEJS
export NODE_HOME=/opt/node/6.9.5
export PATH=$NODE_HOME/bin:$PATH
保存,退出
[root@centos ~]# source /etc/profile
[root@centos ~]# node -v
[root@centos ~]# npm -v
输出node npm 的版本号则表示配置成功
2.4 创建www需要的目录、配置用户和用户组
[root@centos ~]# groupadd www
[root@centos ~]# useradd -g www www -s /sbin/nologin
[root@centos ~]# mkdir -p /data/www
[root@centos ~]# chown -R www:www /data/www
2.5 建立基于 express 测试网站
[root@centos ~]# npm install express -gd
[root@centos ~]# npm install express-generator -g
[root@centos ~]# cd /data/www
[root@centos ~]# express -e start
[root@centos ~]# cd start && npm install
2.6 建立启动服务
[root@centos ~]# npm install forever -gd
[root@centos ~]# forever list
显示No forever processes running则表示安装成功
[root@centos ~]# forever start -a /data/www/start/bin/www
[root@centos ~]# forever stop -a /data/www/start/bin/www
[root@centos ~]# vim /lib/systemd/system/node.service
添加以下内容
[Unit]
Description=nodejs
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile==/run/node.pid
ExecStart=/opt/node/6.9.5/bin/forever start -a /data/www/start/bin/www
ExecReload=/opt/node/6.9.5/bin/forever restart -a /data/www/start/bin/www
ExecStop=/opt/node/6.9.5/bin/forever stop /data/www/start/bin/www
PrivateTmp=true
[Install]
WantedBy=multi-user.target
保存,退出
[root@centos ~]# systemctl enable node.service
[root@centos ~]# systemctl list-unit-files|grep enabled|grep node
2.7 启动服务
[root@centos ~]# systemctl daemon-reload
[root@centos ~]# systemctl start node.service
[root@centos ~]# systemctl status node.service -l
[root@centos ~]# ps -ef|grep node
2.8 防火墙添加3000端口
[root@centos ~]# iptables -L|grep ACCEPT
[root@centos ~]# firewall-cmd --zone=public --add-port=3000/tcp --permanent
[root@centos ~]# firewall-cmd --reload
[root@centos ~]# iptables -L|grep ACCEPT
2.9 浏览器打开
http://192.168.1.10:3000
显示出欢迎内容,则表示成功