一、安装xshell
地址:https://www.netsarang.com/zh/free-for-home-school/
输入名字和邮箱后,下载链接会发送到邮箱里,进邮箱点击链接下载并安装,注意要选择fxtp,上传文件需要用到
二、连接服务器
软件安装完毕后,然后我们就可以使用Xshell连接linux主机了,点击最左边的加号图标,新建一个服务器连接(或者使用文件 – 新建)
在主机一栏填写自己的服务器ip地址,端口没有修改过的话一般就是22端口,填写完成后点击确定
添加完服务器后我们点击加号右边的打开按钮,选择刚刚添加的”新建会话”
出现安全提示,往往是第一次连接这台服务器,选择接受并保存
用户名填写root,如果想要记住密码的话勾选记住用户名
然后选择Password输入服务器密码,如果想要记住密码的话勾选记住密码
出现如下的提示,证明服务器连接成功;如果连接中断,则检查ip、端口、账号、密码等参数
输入命令,测试连接
这样就算连接成功了,可以在服务器上输入指令了,如果在自己的电脑上,可以勾选记住密码,当以后需要连接时,只需要直接打开就能使用
三、安装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核数,开启对应数目的进程