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

显示出欢迎内容,则表示成功

原文地址:https://www.cnblogs.com/vicowong/p/4156931.html