• 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一些常用操作命令
    forever start demo.js //启动项目 demo.js是你要启动的js文件
    forever list //列出forever正在运行的服务脚本
    forever stop demo.js //可停止服务运行
    forever --help  //查看帮助信息
    //指定demo.js中的日志信息和错误日志输出文件
    //-o 是console.log输出的信息   -e 是console.error输出的信息 
    forever start -o out.log -e err.log demo.js 
    //指定forever信息输出文件,默认放到~/.forever/forever.log,可以指定绝对路径放置自己的目录 
    forever -l forever.log start demo.js
    

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

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

  • 相关阅读:
    NodeJS优缺点及适用场景讨论
    gitHub安装步骤
    ubuntu16.04爬坑
    Dubbo入门
    oracle11g的卸载
    数据库对象的创建和管理
    oracle数据库中的面试题
    dml数据操作和tcl事务管理
    oracle sql单行函数 常用函数实例
    oracle查询语句汇总与分类
  • 原文地址:https://www.cnblogs.com/guors/p/14733834.html
Copyright © 2020-2023  润新知