一、Linux基础相关
1、在Linux系统中安装node程序,Linux系统常用的有Ubuntu,centOS等,如果不能确定Linux具体的系统版本,可以通过命令查看.
1 | cat /etc/redhat-release |
2、常用的安装方法是使用已编译好的版本,也可以通过编译安装,好处就是可以获取最新版,但是坑比较多。
1 | $ wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz // 下载 |
1 | // 使用ln命令来设置软链接 |
比较简单的可以直接通过EPEL安装,EPEL库安装的版本相对较低,可以通过安装node 版本工具 n 来进行管理。
1 | $ Sudo yum install epel-release |
3、安装pm2 node 的管理工具
全局安装
1 | $ npm install pm2 -g |
pm2 管理node程序的好处
内建负载均衡
支持性能监控
0 秒停机重载,我理解大概意思是维护升级的时候不需要停机.
具有 Ubuntu 和 CentOS 的启动脚本
停止不稳定的进程(避免无限循环)
服务器重新启动时自动重新启动
自动化部署(没研究)
pm2常用命令
1 | // 启动node程序 |
4、vim 文本编辑器 相关命令
Vim 文本编辑在类unix系统中使用广泛,主用用来编辑文件内容,针对前端来说,平时简单修改配置,个人觉得
只需要熟练记住几个常用命令既可,如图:
截止目前我常用的就是编辑nginx配置,拿nginx举例基本操作如下:1
2
3
4
5
6
7
8// 切换 root 账户
$ sudo su root
// 查看nginx配置
$ vim /etc/nginx/nginx.conf
// 基本命令
$ a 进入编辑 :wq 保存退出 :q! 不保存退出 ESC 退出编辑状态
// 重启nginx 服务
$ nginx -s reload
二、项目部署
1、文件上传(通过Jenkins自动化构建)
如果没有配置Jenkins 也可以手动通过命令上传
1 | $ scp -r -P 10086 /Users/ronluo/Desktop/h5/gaia-flexi-cms-team/maya-server/dist devops@47.102.207.109:/home/devops/flexi-fuwu/Maya-server/dist |
2、node服务启动
服务器上传node dist包,使用pm2 启动,因为后台服务和前台放置在同一服务器,所以可以把后台地址配置为内网地址127.0.0.1:8809,然后node中的public指向前端静态文件。
配置ngnix反向代理到node的端口,可以不使用ngnix去反向代理,也可以联系运维直接将域名指向node端口,但是找别人太麻烦,所以直接通过ngnix反向代理到node端口。