linux服务器安装node环境及项目部署

首先,我们需要下载我们需要的linux版本的node安装包

//下载各版本nodejs地址链接

Index of /download/release/

这里我安装的是node-v8.12.0-linux-x64.tar.xz

下载好后我们的到服务器端的根目录下安装node环境,需要root权限用户才好操作哦

// 将tar.xz压缩文件转成  node-v8.11.3-linux-x64.tar

xz -d node-v8.12.0-linux-x64.tar.xz

//再用 tar xvf node-v8.11.3-linux-x64.tar  解压缩文件

tar -xvf node-v8.12.0-linux-x64.tar

//可修改名字(也可以不改名字的)

mv node-v8.12.0-linux-x64 nodejs

可以进入到nodejs文件bin目录下,执行 ./node -v 可查看版本

可以查看的到node版本,但是呢,这样不方便,我们想要的是全局都能用,而不是只能在某个目录下使用。我们现在就做下配置

返回根目录,对node和npm设置软连接

ln -s /usr/nodejs12/nodejs/bin/node /usr/local/bin/node 

ln -s /usr/nodejs12/nodejs/bin/npm /usr/local/bin/npm

我们可以查看下/usr/local/bin/目录下是否有了node和npm了

有了!我们在试下node -v 是否可以查看得到版本号,如果可以,那么就证明node环境就差不多啦

node自带了npm,我们可以顺便都查下node和npm的版本,如果可以查到,则证明你的node和npm基本可以用啦

但是我们最好还是需要做下配置,以免日后翻车

//进入到profile文件

vim /etc/profile 

//在文件的末尾添加一下三行语句 (vim 操作命令可自己网上百度,这里就不多说了)

export NODE_HOME=/usr/local/node

export PATH=$PATH:$NODE_HOME/bin

export NODE_PATH=$NODE_HOME/lib/node_modules

//按ESC键,再输入:wq保存并退出

//配置完成后执行

source /etc/profile

//在命令行中输入 node -v

//为了保证每个账户下该配置均可用需要

vim /root/.bashrc

//在这个文件的末尾加上以下这句语句

source etc/profile

//按ESC键,再输入:wq保存并退出

//成啦

再去试试,你会觉得无比自在~~旋转 跳跃 ~~

这里你就能看到成功的曙光了,nodejs环境已经好了,OK

接下来是node项目部署啦

你可以创建一个存放你的项目目录

把你的node项目拉进来,然后进入到你的项目根目录下npm install安装依赖

//这样你保存在package.json的依赖就会自动安装了

npm install

好了,我们需要思考个问题,怎么让项目一直跑起来呢?服务器不关,项目怎么可以一直维持着运行的状态呢?

两种方法:pm2和forever

forever和pm2的区别:

forever 管理多个站点,每个站访问量不大,不需要监控。

pm2 的话访问量会相对大,需要完整的监控界面。

可根据自己需求进行安装哦~~

这里,我两个都安装了,运行时只需要一个就够了哦

全局安装pm2

npm install pm2 -g

建立pm2软连接

ln -s /usr/nodejs12/nodejs/bin/pm2 /usr/local/bin/pm2

pm2一些常用操作命令

启动:pm2 start demo.js  //demo.js是你要启动的app_name|app_id文件

停止:pm2 stop app_name|app_id

删除:pm2 delete app_name|app_id

重启:pm2 restart app_name|app_id

停止所有:pm2 stop all

查看所有的进程:pm2 list

查看所有的进程状态:pm2 status

查看某一个进程的信息:pm2 describe app_name|app_id

参数说明

--watch:监听应用目录源码的变化,一旦发生变化,自动重启。如果要精确监听、不见听的目录,最好通过配置文件

-i --instances:启用多少个实例,可用于负载均衡。如果-i 0或者-i max,则根据当前机器核数确定实例数目,可以弥补node.js缺陷

--ignore-watch:排除监听的目录/文件,可以是特定的文件名,也可以是正则。比如--ignore-watch="test node_modules "some scripts"

-n --name:应用的名称,查看应用信息的时候可以用到

-o --output <path>:标准输出日志文件的路径,有默认路径

-e --error <path>:错误输出日志文件的路径,有默认路径

--interpreter <interpreter>:the interpreter pm2 should use for executing app (bash, python...)

如完整参数命令:

pm2 start demo.js --watch -i 2  //开启2个进程

pm2 start app.js -i max  //根据机器CPU核数,开启对应数目的进程

更多的执行命令及用法可自行网上搜,这里不一一列出了哦

全局安装forever

npm install forever -g

建立forever软连接

ln -s /usr/nodejs12/nodejs/bin/forever /usr/local/bin/forever

forever一些常用操作命令

foreverstartdemo.js//启动项目 demo.js是你要启动的js文件foreverlist//列出forever正在运行的服务脚本foreverstopdemo.js//可停止服务运行forever--help//查看帮助信息//指定demo.js中的日志信息和错误日志输出文件//-o 是console.log输出的信息  -e 是console.error输出的信息foreverstart-oout.log-eerr.logdemo.js//指定forever信息输出文件,默认放到~/.forever/forever.log,可以指定绝对路径放置自己的目录forever-lforever.logstartdemo.js

更多的执行命令及用法可自行网上搜,这里不一一列出了哦

转载于:https://zhuanlan.zhihu.com/p/49741341

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,937评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,503评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,712评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,668评论 1 276
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,677评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,601评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,975评论 3 396
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,637评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,881评论 1 298
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,621评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,710评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,387评论 4 319
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,971评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,947评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,189评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,805评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,449评论 2 342

推荐阅读更多精彩内容