目录
安装工具
安装:finalshell_install (连接服务器的工具,SSH工具软件)
相关文档:http://www.hostbuf.com/?install_fs
关于使用:
下载finalshell客户端,点击文件夹新建连接,输入IP等信息,就可以进入命令窗口
参考链接:https://jingyan.baidu.com/article/11c17a2cfff2eaf447e39d7c.html
部署流程中用到的命令
需要用到 centos7 命令
可以百度搜索,熟悉命令写法
常用(顺序仅供参考,具体可以按照部署方案中的顺序执行):
1. 进入到项目路径
cd /opt/app/nginx/html/
2. 上传打包项目生成的压缩包
rz
3. ll (查看当前路径文件,随时可以执行此命令确认)
4. 替换原有文件重命名(保留一份备份以防不测)
mv 源文件名 修改后的文件名
5. 解压缩上上传的项目包文件
unzip ***.zip
6. 删除项目压缩包
rm -rf ***.zip
关于代码部署方案
部署方案:只部署dist文件
一、部署步骤:(项目名称:”a”,项目旧版本名称:”a-bak1.1.0”)
1、更新相关代码或者配置(包括项目配置和webpack配置)
2、本地执行$npm run build;
3、在服务端新建一个项目空文件夹“a-new”,然后将新生成的dist文件内容全部上传到“a-new”中;
4、上传完毕后,测试效果,测试通过后将”a”先改成”a-bak1.2.0”,然后立即将“a-new”改成”a”;
5、测试效果,验证是否成功上线。
注:步骤1、2在本地开发和执行,步骤3、4、5可以实现自动化;
二、只部署dist文件的优缺点:
1、上传更新的速度:慢,(每次部署的时候,是更新整个dist中所有的文件)
解决方法:采用新旧版本更替的方式来解决上传代码的过程中影响用户操作;每次更新只对项目的旧版本进行更新,等更新完成再将旧版本切换成新版本,之前的新版本切换成旧版本;【这样更新的过程中对用户操作影响就不多了,快或者慢就不是一个问题了】2、编译的速度:在本地编译,不影响用户操作,无需考虑速度快慢;
3、操作简单:此种部署方式不用在线上搭一套开发环境,也不用在线上操作任务代码(比如执行$npm run build),可以实现自动化部署方案;
4、安全:源代码不会因为服务器被攻击而被泄漏出去。
其他:
xshell6+xftp6 可视化部署方案