新建項(xiàng)目(需要到該項(xiàng)目文件目錄下執(zhí)行,否則日志會(huì)報(bào)錯(cuò)) 創(chuàng)新互聯(lián)是一家專注網(wǎng)站建設(shè)、網(wǎng)絡(luò)營(yíng)銷策劃、小程序開發(fā)、電子商務(wù)建設(shè)、網(wǎng)絡(luò)推廣、移動(dòng)互聯(lián)開發(fā)、研究、服務(wù)為一體的技術(shù)型公司。公司成立10余年以來,已經(jīng)為上千余家成都廣告制作各業(yè)的企業(yè)公司提供互聯(lián)網(wǎng)服務(wù)?,F(xiàn)在,服務(wù)的上千余家客戶與我們一路同行,見證我們的成長(zhǎng);未來,我們一起分享成功的喜悅。 | pm2 start bin/www - i max - - name ijhealth |
只開啟一個(gè)線程 | node bin/www (沒有進(jìn)程守護(hù)) |
開啟項(xiàng)目 | pm2 start 項(xiàng)目名稱 |
關(guān)閉項(xiàng)目 | pm2 stop 項(xiàng)目名稱 |
重啟項(xiàng)目 | pm2 restart 項(xiàng)目名稱 |
刪除項(xiàng)目 | pm2 delete 項(xiàng)目名稱 |
列出項(xiàng)目 | pm2 list |
查看進(jìn)程詳細(xì)信息 | pm2 show 0 / pm2 info 0 (0為進(jìn)程ID) |
查看日志 | pm2 logs 項(xiàng)目名稱 |
清空日志 | pm2 flush |
重載日志 | pm2 reloadLogs |
升級(jí)PM2 | npm install pm2@lastest -g (安裝最新版本) pm2 updatePM2 (升級(jí)pm2) |
查看幫助 | pm2 --help |
修改npm源 | npm config set registry="http://registry.npmjs.org" 或者 npm config set registry="https://registry.npm.taobao.org"
|
注:所有pm2 命令都可以用all來對(duì)所有項(xiàng)目執(zhí)行操作,比如刪除所有項(xiàng)目,可以執(zhí)行以下語句
pm2 delete all
注:node.js有保護(hù)進(jìn)程,如果要停止一個(gè)項(xiàng)目,需要用pm2 delete刪除,而不能用kill殺進(jìn)程,否則kill完還是會(huì)有進(jìn)程產(chǎn)生。
操作系統(tǒng):Linux h6 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
1.直接從網(wǎng)上(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.設(shè)置全局變量
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.設(shè)置環(huán)境變量
vim /etc/profile
在export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下內(nèi)容:
#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驗(yàn)證是否安裝配置成功
node -v如果看到版本號(hào),說明node安裝成功
1.yum install epel-release
2.yum install redis
一.下載代碼
登入svn,checkout最新代碼
(例如:https://svn.dev.zoenet.cn:8443/svn/juyihui/client/web/zoe-jxcoverage-app/trunk)
下載的所有文件夾和文件到本地,并將這些文件(除了.idea和node_modules,因?yàn)檫@兩個(gè)文件在之后運(yùn)行npm install時(shí)會(huì)安裝)壓縮成一個(gè)zip安裝包
在/home/zoe-net(此處為本例常用項(xiàng)目存放處,可根據(jù)實(shí)際情況自定義)下,新建一個(gè)項(xiàng)目文件夾,命名為項(xiàng)目名
mkdir new_project
將壓縮包傳到/home/zoe-net/new_project 下(可以使用rz命令上傳文件),并將壓縮包解壓到new_project文件夾下
unzip new_project.zip
在new_project下,運(yùn)行以下命令:
cd /home/zoe-net/new_project
npm install
安裝node-gyp
npm install node-gyp -g
(注意:不安裝此項(xiàng)有可能出現(xiàn)執(zhí)行npm install進(jìn)程卡住的問題 )
再安裝ccap
npm install ccap
還需要安裝git, gcc
$ npm update minimatch
$ npm -v minimatch
2.10.1
$ npm install -g npm@3
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
npm@3.10.5 /usr/local/lib/node_modules/npm
$ npm install -g minimatch@3.0.2
/usr/local/lib
└─┬ minimatch@3.0.2
└─┬ brace-expansion@1.1.6
├── balanced-match@0.4.2
└── concat-map@0.0.1
$ npm -v minimatch
firewall-cmd --zone=public --add-port=4100/tcp --permanent
firewall-cmd --reload
注:4100處為項(xiàng)目需要開啟的端口號(hào)
安裝cnpm
npm install cnpm -g
修改注冊(cè)表地址
cnpm config set registry="http://172.16.34.248:7001/"
(以上IP地址根據(jù)自身情況而定)
cnpm config list
安裝zoenet-itom項(xiàng)目
cnpm install zoenet-itom
安裝ccap
cnpm install ccap --save
之后很多操作都需要使用PM2的強(qiáng)大功能,這里需要先安裝pm2
npm install -g pm2
確保配置文件中redis地址正確,配置文件config.js地址位于
項(xiàng)目名稱下的app/config下,如果redis安裝在本地,可以將
host:"localhost" 前的//去掉,在原本的host前加上//
注:一般情況下如果發(fā)布后網(wǎng)頁卡頓無法打開,日志又沒有報(bào)錯(cuò),就要看看redis的地址是否是正確的。
九.初始化項(xiàng)目
注意,初始化時(shí)需要進(jìn)入指定項(xiàng)目的目錄執(zhí)行,否則可能會(huì)產(chǎn)生日志錯(cuò)誤
例如,添加ijhealth 服務(wù)監(jiān)視:
cd /home/zoe-net/ijhealth
pm2 start bin/www - i max --name ijhealth
注:
Start 代表添加服務(wù)
www 是bin文件夾下一個(gè)相當(dāng)于執(zhí)行監(jiān)視的插件服務(wù)
-i3 代表監(jiān)視三個(gè)線程,一般js只用到3個(gè)以內(nèi)的線程,也可以用max,表示使用最大線程數(shù)
--name ijhealth 自定義監(jiān)測(cè)list中所監(jiān)測(cè)服務(wù)的名字,一般和項(xiàng)目名稱一致,方便區(qū)別
pm2 list
一般項(xiàng)目都在啟動(dòng)中,可以用重啟命令,重啟某個(gè)項(xiàng)目。例如,重啟ijhealth
pm2 restart ijhealth
關(guān)閉某個(gè)項(xiàng)目
pm2 stop 項(xiàng)目名字
刪除某個(gè)項(xiàng)目
Pm2 delete 項(xiàng)目名字
pm2 logs
或
pm2 logs 具體項(xiàng)目名稱
例如,要查看ijhealth 項(xiàng)目的端口號(hào),需要進(jìn)入項(xiàng)目的文件夾中,查看bin/www文件
cat /home/zoe-net/ijhealth/bin/www
答:需要在對(duì)應(yīng)項(xiàng)目下node_modules文件夾中添加com.zoe.timehash時(shí)間戳。(該時(shí)間戳的獲取可以直接從已有的項(xiàng)目下復(fù)制黏貼)
例如:/home/zoe-net/zoenethospital/node_modules/com.zoe.timehash
答:?jiǎn)栴}的原因是npm源指定問題,解決方法是重新指定npm源地址。npm config set registry="http://registry.npmjs.org"
如果上面的npm地址不行的話,大家可以試試淘寶的npm,非常穩(wěn)定:
地址:https://registry.npm.taobao.org
答:首先,先檢查一下對(duì)應(yīng)端口有沒有開(端口號(hào)可以在bin/www中或者app.js中查詢到),如果有,再檢查一下對(duì)應(yīng)的端口號(hào)是否已經(jīng)被占用或者和其他應(yīng)用程序沖突(可以pm2 stop項(xiàng)目并且pm2 delete項(xiàng)目,然后netstat -nltp看一下端口是否還在)。如果以上檢查都沒有問題,有可能是因?yàn)閞edis地址設(shè)置問題。先檢查redis是否開啟,如果開啟,再到項(xiàng)目文件夾下app/config中的config.js里查看redis的地址是否指向正確。
答:只需在對(duì)應(yīng)項(xiàng)目文件夾下運(yùn)行npm install 命令就好
分享文章:node.js部署文檔(Linux版)
文章URL:http://jinyejixie.com/article48/ghhdhp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號(hào)、建站公司、做網(wǎng)站、搜索引擎優(yōu)化、手機(jī)網(wǎng)站建設(shè)、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)