使用Jenkins部署VUE项目到windows服务器_配置Jenkins项目(4)
2020-12-19 19:33
标签:导致 taobao 存储 nodejs power mic 备份 pre 服务 接上文,我们的前端代码是通过git管理的,需求是通过Jenkins拉取前端VUE代码并且编译生成待部署的部署包。经过分析,我们需要做如下的准备: 1、Jenkins的机器能拉取git代码并编译;——已完成 2、Jenkins的机器能通过SSH连接项目所在的windows server服务器;——已完成 3、新建Jenkins任务将编译、部署串起来;——本期目标 PS:项目的情况如下 1台,部署在windows机器 新建自由风格的项目 由于项目使用git管理代码,这里进行git相关配置。注意使用最开始配置的全局凭证,即Jenkins机器生成的私钥。 构建触发器请参考注释按需配置,由于目前我们项目只需要手动触发构建,这里就不选了。 由于项目是VUE项目,这里要配置使用nodejs(前文在Global Tool Configuration中配置)环境进行编译。(参考https://www.cnblogs.com/chooperman/p/14061469.html) 由于我部署Jenkins服务的机器也是windows的,这里选择使用windows命令进行拉取代码后的编译(下图1)及后续处理(下图2)。 使用如下命令后,最终会在 %WORKSPACE%目录下,生成dist.tar的压缩包,后续将其直接放入项目服务器解压即可。 附上相关代码 得到上述产物包后,使用Send files or execute commands over SSH命令,选择配置好的远程服务器,按下图将包发送到项目服务器上。 接下来,使用Execute shell script on remote host using ssh命令,选择项目所在服务器,进入指定的目录,执行该目录下已经提前配置好的bat脚本,进行产物包挪位置,解压、删除等操作。 注意:由于前文提到使用powerShellServer工具连接到远程服务器后,其命令行所在的默认的路径(下图1),并不是将代码包复制过去的路径(下图2、图3),而我们把bat脚本也放在了代码包复制过去默认存储的路径,因此要注意切换到对应目录执行bat脚本。 然后说明下bat脚本的主要作用,主要是将产物包从临时目录复制到项目部署所需目录,然后进入该目录对其进行解压,解压后删除废弃的产物包。这里暂时没有对原代码包进行备份等操作,各位按需进行。 上述所有内容配置完后,保存即可。 接下来进行调试看看,由于前面准备工作比较到位,查看控制台输出发现一次成功了。 最后,建议直接访问项目的web地址,通过实际的功能界面确认下代码是否已部署最新的了。 好了,经过这些天的调试,终于能使用Jenkins部署代码到windows server服务器了。总结下来,耽误比较多精力的是 1、项目服务器是阿里云,一开始不清楚没有及时找管理员开放ssh端口导致调试耽误很长时间; 2、在ssh工具的选择上,花费了很多时间,最终仅使用powershellServer成功了; 3、Jenkins部署所在机器各类环境的安装,nodejs、git等等; 还是linux好用点,哈哈哈~ 使用Jenkins部署VUE项目到windows服务器_配置Jenkins项目(4) 标签:导致 taobao 存储 nodejs power mic 备份 pre 服务 原文地址:https://www.cnblogs.com/chooperman/p/14077964.html一、分析准备
Jenkins机器
项目语言
VUE纯前端
项目部署服务器
1台,windows server服务器
二、Jenkins项目配置
call echo 构建_01注册淘宝镜像
call npm config set registry https://registry.npm.taobao.org
call echo 构建_02检查注册结果
call npm config get registry
call echo 构建_03依赖安装
call npm install
call echo 构建_04编译打包
call npm run build
call echo 构建后处理_01进入dist目录
call cd dist
call echo 构建后处理_02压缩编译包
call tar cvf dist.tar *
call echo 构建后处理_03压缩包放入工作目录
call xcopy /s/y dist.tar %WORKSPACE%
文章标题:使用Jenkins部署VUE项目到windows服务器_配置Jenkins项目(4)
文章链接:http://soscw.com/index.php/essay/37260.html