Jenkins Linux+SVN+Window部署Vue代码实现自动化部署功能(一)

341 阅读2分钟

1. 实现背景

近期项目不断地更新功能,基本每天打包项目3-5次发到经理,然后再发布到线上,产品经理也因为工作需要,有时候忙直接扔给我服务器部署,因为每次手动打包,然后再部署到线上。刚开始比较好,但后面持续的次数比较多,所以就不想这样,自动化部署就出现我的脑海中。。

2. 腾讯云购买服务器

这不是妥妥地物美价廉吗,50块买了一年服务器(买的是腾讯云轻量级应用),后面搭建学习使用。

image.png

搭建的环境是Cent0S 8.2(搭建window Server12也可以安装Jenkins,但后面写命令比较蛋疼,建议还是在linux部署,后面有说到)

3. 安装Jenkins

安装和搭建教程不说了,网上一大堆,可以参考:[Linux 中环境安装Jenkins] 安装成功显示的页面:

image.png

4.安装插件

image.png

安装的插件:
1. [Publish Over SSH]  用来远程部署打包到其它服务器上(我司用的是IIS服务器,如果jenkins部署的服务器和前端的服务器在同一个地方,可以直接build就可以,不用打包到远程服务器上。)
2. [SSH plugin] SSH用来连接且执行远程命令代码(因为写了一个window启动命令,要远程执行。)
3. [Subversion] 代码托管用的是svn,如果是git的话,网上配置git的可以,这里就不详细说。
4. [NodeJS Plugin]  这个是用于node线上打包的,特别注意的是它的node版本,建议用CNPM,后面有配置说明
5. [Multijob plugin] 流水线执行任务,因为存在多任务执行,打包项目发送到远程服务器上,再执行另一个任务执行window的脚本迁移到所需要的文件夹。

5.全局配置

image.png

image.png cnpm --registry=https://registry.npm.taobao.org

6.局部配置

image.png

1.配置远程服务器(线上)Publish Over SSH 插件

image.png

image.png

image.png

2.配置执行远程服务器的命令 SSH Server插件远程执行命令,和上面的差不多

image.png

image.png

7.Window下载powerShellServer,配置

如果你远程服务器是IIS的话,要下载一个工具powerShellServer,保持ssh连接。否则上面会存在连接不成功的情况。

image.png

image.png

image.png 最后Jenkins打包完成后会发送到这个文件夹(如图所示)

image.png

这里是参考该作者,可以参考这里实现# 【CI/CD】使用Jenkins部署VUE项目到windows服务器_配置Jenkins项目