zoukankan      html  css  js  c++  java
  • 使用xshell在linux服务器上部署node项目

    一、安装xshell

    地址:https://www.netsarang.com/zh/free-for-home-school/

    输入名字和邮箱后,下载链接会发送到邮箱里,进邮箱点击链接下载并安装,注意要选择fxtp,上传文件需要用到

    二、连接服务器

    软件安装完毕后,然后我们就可以使用Xshell连接linux主机了,点击最左边的加号图标,新建一个服务器连接(或者使用文件 – 新建)

    Xshell新建服务器

    在主机一栏填写自己的服务器ip地址,端口没有修改过的话一般就是22端口,填写完成后点击确定

    xshell填写服务器ip和端口

    添加完服务器后我们点击加号右边的打开按钮,选择刚刚添加的”新建会话”

    xshell连接服务器

    出现安全提示,往往是第一次连接这台服务器,选择接受并保存

    xshell安全警告

    用户名填写root,如果想要记住密码的话勾选记住用户名

    xshell填写用户名

    然后选择Password输入服务器密码,如果想要记住密码的话勾选记住密码

    xshell填写密码

    出现如下的提示,证明服务器连接成功;如果连接中断,则检查ip、端口、账号、密码等参数

    xshell连接成功

    输入命令,测试连接

    xshell命令测试

    这样就算连接成功了,可以在服务器上输入指令了,如果在自己的电脑上,可以勾选记住密码,当以后需要连接时,只需要直接打开就能使用

    三、安装nodejs

    查看linux系统的位数 

    通过  uname -a  命令查看到我的Linux系统位数是64位(备注:x86_64表示64位系统, i686 i386表示32位系统),如图

    1. 下载node最新版本 : 连接   https://nodejs.org/download/release/

     wget  https://nodejs.org/download/release/v9.9.0/node-v9.9.0-linux-x64.tar.xz

    或者使用的xshell中的rz命令来上传文件

    在xshell中输入rz命令,看是否已经安装了lrzsz,如果没有安装则执行  yum   -y  install  lrzsz命令进行安装。

    安装成功后,输入rpm -qa lrzsz 命令确认是否正确安装

     

    输入rz或者re -y,选择刚才下的压缩包

     

    2. 解压

       xz -d node-xxxx.tar.xz ---将tar.xz解压成tar文件

       tar -xvf node-xxxx.tar ---将tar文件解压成文件夹

    修改文件夹(目录)的名字

    mv node-v9.9.0-linux-x64 nodejs

    3、执行软连接

    注意:确认一下nodejs下bin目录是否有node 和npm文件,如果有执行软连接,如果没有重新下载执行上边步骤

     

    确认有node和npm文件了

    检查是否可以安装成功

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

    ln -s /root/nodejs/bin/node /usr/bin/ 

    ln -s /root/nodejs/bin/npm /usr/bin/
    但是我们最好还是需要做下配置,以免日后翻车
    //进入到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保存并退出

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

    两种方法:pm2和forever

    forever和pm2的区别:

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

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

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

    安装pm2,通过pm2启动node可以使关闭终端时node依然运行。

     

    进入后端代码的跟目录,通过npm i 安装后端代码需要的库,启动node

    pm2 start index.js
    linux下不像windows下能自动创造一个环境变量去实现我们的全局。所以我们需要创建一个linux下的软连接。

    下面出现的都是全局环境路径,选哪一个都可以,我选的是红框的全局环境变量/usr/local/bin

    ln -s /root/nodejs/bin/pm2 /usr/bin/
    

      

    使用pm2 list验证是否成功建立连接

    pm2 list


    四、node项目部署

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

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

    然后到项目目录下启动项目

    pm2 start app.js
    

      

     五、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核数,开启对应数目的进程 
  • 相关阅读:
    定时任务的分布式调度
    springmvc 静态资源 配置
    activemq 持久化
    函数式编程与面向对象编程的比较
    LeetCode 108——将有序数组转化为二叉搜索树
    LeetCode 104——二叉树中的最大深度
    LeetCode 700——二叉搜索树中的搜索
    线性代数之——四个基本子空间
    线性代数之——线性相关性、基和维数
    线性代数之——秩和解的结构
  • 原文地址:https://www.cnblogs.com/phoebeyue/p/13515195.html
Copyright © 2011-2022 走看看