node.js部署文档(Linux版)

常用命令


新建项目(需要到该项目文件目录下执行,否则日志会报错)


pm2 start bin/www  - i  max  - - name  ijhealth


只开启一个线程


node  bin/www (没有进程守护)


开启项目


pm2  start    项目名称


关闭项目


pm2  stop    项目名称


重启项目


pm2  restart  项目名称


删除项目


pm2  delete  项目名称


列出项目


pm2  list


查看进程详细信息


pm2 show 0  /   pm2 info 0   (0为进程ID)


查看日志


pm2  logs    项目名称


清空日志


pm2 flush


重载日志


pm2 reloadLogs


升级PM2


npm install [email protected] -g  (安装最新版本)

pm2 updatePM2    (升级pm2)


查看帮助


pm2 --help


修改npm源


npm config set registry="http://registry.npmjs.org"

或者

npm config set registry="https://registry.npm.taobao.org"

注:所有pm2 命令都可以用all来对所有项目执行操作,比如删除所有项目,可以执行以下语句

pm2 delete all

注:node.js有保护进程,如果要停止一个项目,需要用pm2 delete 删除,而不能用kill 杀进程,否则kill完还是会有进程产生。

 

环境安装

操作系统:Linux h5 3.10.0-327.13.1.el7.x86_64 #1 SMP Thu Mar 31 16:04:38 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

操作步骤

Node.js 环境搭建

一.安装node.js

1.直接从网上(http://nodejs.cn/download/)下载压缩包node-v6.2.0-linux-x64.tar.xz,放到linux上 home目录下

2.解压压缩包到/home/node下

cd /home

tar -zxv -f node-v6.2.0-linux-x64.tar.xz 

mkdir node

mv node-v6.2.0-linux-x64   node

3.设置全局变量

ln -s   /home/node/node-v6.2.0-linux-x64/bin/node    /usr/local/bin/node

ln -s   /home/node/node-v6.2.0-linux-x64/bin/npm     /usr/local/bin/npm 

4.设置环境变量

vim  /etc/profile

在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下内容:

#set for nodejs

export NODE_HOME=/home/node/node-v6.2.0-linux-x64

export PATH=$NODE_HOME/bin:$PATH

:wq保存并退出,编译/etc/profile 使配置生效

source/etc/profile验证是否安装配置成功

node  -v如果看到版本号,说明node安装成功

二、安装 redis

1.yum install epel-release

2.yum install redis

Node.js项目初始化

一.下载代码

 

登入svn,checkout最新代码

(例如:https://svn.dev.zoenet.cn:8443/svn/juyihui/client/web/zoe-jxcoverage-app/trunk)

下载的所有文件夹和文件到本地,并将这些文件(除了.idea和node_modules,因为这两个文件在之后运行npm install 时会安装)压缩成一个zip安装包

二.建立新项目文件夹

在/home/zoe-net(此处为本例常用项目存放处,可根据实际情况自定义)下,新建一个项目文件夹,命名为项目名

 mkdir new_project

三.传递代码压缩包

将压缩包传到/home/zoe-net/new_project 下(可以使用rz命令上传文件),并将压缩包解压到new_project文件夹下

unzip new_project.zip

四.npm安装

在new_project下,运行以下命令:

cd /home/zoe-net/new_project

npm install

安装node-gyp

npm install node-gyp  -g

(注意:不安装此项有可能出现执行npm install进程卡住的问题 )

再安装ccap

npm install ccap

 

还需要安装git, gcc

$ npm update minimatch

$ npm -v minimatch

2.10.1

$ npm install -g [email protected]

/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js

[email protected] /usr/local/lib/node_modules/npm

$ npm install -g [email protected]

/usr/local/lib

└─┬ [email protected]

└─┬ [email protected]

├── [email protected]

└── [email protected]

$ npm -v minimatch

六.关闭防火墙

firewall-cmd --zone=public --add-port=4100/tcp --permanent

firewall-cmd --reload

注:4100处为项目需要开启的端口号

安装cnpm

npm install cnpm -g

修改注册表地址

cnpm config set registry="http://172.16.34.248:7001/"

(以上IP地址根据自身情况而定)

cnpm config list

安装zoenet-itom项目

cnpm install zoenet-itom

安装ccap

cnpm install ccap --save

七.安装PM2

之后很多操作都需要使用PM2的强大功能,这里需要先安装pm2

npm install -g pm2

 

 

八.修改配置文件中redis地址

确保配置文件中redis地址正确,配置文件config.js地址位于

项目名称下的app/config下,如果redis安装在本地,可以将

host:"localhost" 前的//去掉,在原本的host前加上//

注:一般情况下如果发布后网页卡顿无法打开,日志又没有报错,就要看看redis的地址是否是正确的。

九.初始化项目

 

注意,初始化时需要进入指定项目的目录执行,否则可能会产生日志错误

例如,添加ijhealth 服务监视:

cd /home/zoe-net/ijhealth

pm2 start bin/www  - i  max  --name  ijhealth

注:

Start    代表添加服务

www           是bin文件夹下一个相当于执行监视的插件服务

-i 3             代表监视三个线程,一般js只用到3个以内的线程,也可以用max,表示使用最大线程数

--name ijhealth   自定义监测list中所监测服务的名字,一般和项目名称一致,方便区别

十.查看启动情况

pm2 list

十一.一般操作指令

 

一般项目都在启动中,可以用重启命令,重启某个项目。例如,重启ijhealth

pm2 restart ijhealth

关闭某个项目

pm2 stop 项目名字

 

删除某个项目

Pm2 delete 项目名字

 

十二.查看日志

 

pm2 logs

pm2 logs 具体项目名称

十三.查看项目端口号

 

例如,要查看ijhealth 项目的端口号,需要进入项目的文件夹中,查看bin/www 文件

cat /home/zoe-net/ijhealth/bin/www

常见问题

问题一:日志提示有关时间戳问题“com.zoe.timehash.zip”

答:需要在对应项目下node_modules文件夹中添加com.zoe.timehash时间戳。(该时间戳的获取可以直接从已有的项目下复制黏贴)

例如:/home/zoe-net/zoenethospital/node_modules/com.zoe.timehash

问题二:npm连接错误“Error: connect ECONNREFUSSED....”

答:问题的原因是npm源指定问题,解决方法是重新指定npm源地址。npm config set registry="http://registry.npmjs.org"

如果上面的npm地址不行的话,大家可以试试淘宝的npm,非常稳定:

地址:https://registry.npm.taobao.org

问题三:node.js项目启动了,pm2 list显示online, pm2 logs 没有报错,但是就是无法访问页面,像是卡住了(有时候可以访问,有时候不行访问)

答:首先,先检查一下对应端口有没有开(端口号可以在bin/www中或者app.js中查询到),如果有,再检查一下对应的端口号是否已经被占用或者和其他应用程序冲突(可以pm2 stop 项目并且pm2 delete项目,然后netstat -nltp 看一下端口是否还在)。如果以上检查都没有问题,有可能是因为redis地址设置问题。先检查redis是否开启,如果开启,再到项目文件夹下app/config中的config.js里查看redis的地址是否指向正确。

问题四:Error: Cannot find module express-session

答:只需在对应项目文件夹下运行 npm install 命令就好

时间: 2024-11-02 06:26:59

node.js部署文档(Linux版)的相关文章

VDP VMware 备份部署文档

文档内容 安装VDP ova虚拟机,部署VDP备份机制. 基础知识 vSphere Data Protection (VDP) 是一个基于磁盘的备份和恢复解决方案,可靠且易于部署. vSphere Data Protection 与 VMware vCenter Server 完全集成,可以对备份作业执行有效的集中式管理,同时将备份存储在经过重复数据消除的目标存储中,支持Web界面访问. 系统环境 操作系统:ESXi 6.0 预安装准备 在安装 vSphere Data Protection 之

Nginx部署文档(二进制包安装)

Nginx部署文档(二进制包安装) 创建时间:2016-06-27 修改时间:2017-03-04 修改时间:2017-03-06 文档目的2 基础知识2 常用命令2 系统环境2 操作步骤3 1. 安装依赖3 2. 安装nginx3 3. 启动nginx5 3. 关闭防火墙6 4. 修改生产环境配置6 常见问题7 问题一:报错"cp: `conf/koi-win' and `/usr/local/nginx/conf/koi-win' are the same file"7 问题二:[

hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档

相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclipse-plugin-2.5.0插件下载hadoop2.5.1汇总:最新编译 32位.64位安装.源码包.API下载及新特性等 新手指导:hadoop官网介绍及如何下载hadoop(2.4)各个版本与查看hadoop API介绍 从零教你在Linux环境下(ubuntu 12.04)如何编译hadoo

服务器安全部署文档(转载)

转载链接http://www.cnblogs.com/EmptyFS/p/3547796.html 年前一直在赶项目,到最后几日才拿到新服务器新添加的硬盘,重做阵列配置生产环境,还要编写部署文档做好安全策略,交给测试部门与相关部门做上线前最后测试,然后将部署文档交给相关部门同事,让他根据部署文档再做一次系统,以保证以后其他同事能自己正常部署服务器,最后终于赶在放假前最后一天匆忙搞定测试后,简单的指导同事按部署文档将服务器重新部署了一次就先跑路回家了,剩下的就留给加班的同事负责将服务器托管到机房了

loganalyzer部署文档-(第一部分)

loganalyzer部署文档 环境准备: 简介 LogAnalyzer 是一款syslog日志和其他网络事件数据的Web前端.它提供了对日志的简单浏览.搜索.基本分析和一些图表报告的功能.数据可以从数据库或一般的syslog文本文件中获取,所以LogAnalyzer不需要改变现有的记录架构.基于当前的日志数据,它可以处理syslog日志消息,Windows事件日志记录,支持故障排除,使用户能够快速查找日志数据中看出问题的解决方案. LogAnalyzer 获取客户端日志会有两种保存模式,一种是

Wcp知识管理系统部署文档

Wcp知识管理系统部署文档 环境 CentOS-6.5-x86_64-bin-DVD1.iso jdk-7u79-linux-x64.tar.gz apache-tomcat-7.0.72.tar.gz MySQL-5.6.33-1.el6.x86_64.rpm-bundle.tar WCP知识管理系统v3.2.0(免费版.开源) http://www.wcpdoc.com/webdoc/view/Pub8a2831b350e6b01f0150e6c1ad5a009f.html 下载地址:百度云

ElasticSearch部署文档(Ubuntu 14.04)

ElasticSearch部署文档(Ubuntu 14.04) 参考链接 https://www.elastic.co/guide/en/elasticsearch/guide/current/heap-sizing.html https://www.elastic.co/guide/en/elasticsearch/reference/current/setup-configuration.html#setup-configuration https://www.elastic.co/guid

zabbix监控安装部署文档

Zabbix监控部署文档 创建时间:2017.02.19          文档目的 安装部署Zabbix服务器和Zabbix客户端,监控客户端服务器的硬件状态 基础知识 zabbix(音同 zbix)是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案. zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题. zabbix由2部分构成,zabbix server与可选组件zabbix agent. z

loganalyzer部署文档

loganalyzer部署文档   目录 一.         环境准备:... 3 二.         简介... 3 三.         系统环境... 3 四.         安装并设置LAMP环境... 3 4.1 安装LAMP环境... 3 4.2 启动服务并加入开机启动... 3 4.3 设置MySQL root 密码... 3 4.4 测试php运行环境... 3 五.         检查并安装服务器端软件... 4 5.1 检查是否安装了rsyslog软件... 4 5.