当前位置: 首页 > news >正文

windows中使用Jenkins打包,部署vue项目完整操作流程

文章目录

    • 1. 下载和安装
    • 2. 使用
      • 1. 准备一个 新创建 或者 已有的 Vue项目
      • 2. git仓库
      • 3. 添加Jenkinsfile文件
      • 4. 成功示例

1. 下载和安装

网上有许多安装教程,简单罗列几个

  • Windows系统下Jenkins安装、配置和使用
  • windows安装jenkins

2. 使用

在Jenkins已经安装的基础上,可以开始下面的教程

1. 准备一个 新创建 或者 已有的 Vue项目

image-20240719140830121

2. git仓库

  1. github/gitee/gitlab都一样
  2. Jenkins需要凭证,所以我使用的ssh链接
  3. 需要生成秘钥,然后在gitee和Jenkins中添加

image-20240719141305612

image-20240719141849264

image-20240719142410034

3. 添加Jenkinsfile文件

image-20240719142615876

image-20240719142723189

  1. Jenkinsfile代码
pipeline {agent any// 定义变量, 使用方式: ${变量名}environment {REMOTE_SERVER_DIR  = "/www/wwwroot/XXXXX/vite_test_app"REMOVE_PREFIX = "dist"ARTIFACT_PATTERN = "**/dist/**"SOURCE_FILES =  "dist/**"}stages {stage('Checkout') {steps {checkout scm}}stage('Install Dependencies') {steps {bat 'npm install --legacy-peer-deps'}}stage('Build') {steps {bat 'npm run build'}}stage('Archive Artifacts') {steps {archiveArtifacts artifacts: "${ARTIFACT_PATTERN}", fingerprint: true}}stage('Deploy to Remote Server') {steps {sshPublisher(publishers: [sshPublisherDesc(configName: 'baota', // 修改为您的配置名 baotatransfers: [sshTransfer(cleanRemote: true,excludes: '',execCommand: "", // 如果有部署后需要执行的命令,可以在这里添加execTimeout: 120000,flatten: false,makeEmptyDirs: false,noDefaultExcludes: false,patternSeparator: '[, ]+',remoteDirectory: "${REMOTE_SERVER_DIR}", // 确保remote_directory变量已定义remoteDirectorySDF: false,removePrefix: "${REMOVE_PREFIX}", // 假设源文件夹结构中dist是要移除的前缀sourceFiles: "${SOURCE_FILES}" // 指定要传输的源文件或目录模式)],usePromotionTimestamp: false,useWorkspaceInPromotion: false,verbose: false)])}}}post {always {cleanWs()}}
}

image-20240719143416742

4. 成功示例

image-20240719143555516

image-20240719143659119

image-20240719150634358

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Linux驱动开发-06蜂鸣器和多组GPIO控制
  • pyqt/pyside QTableWidget失去焦点后,选中的行仍高亮的显示
  • uniapp小程序项目解决键盘问题
  • 无人机的发展前景大吗?
  • 23种设计模式之命令模式
  • Python(re模块的具体使用)
  • QT通用配置文件库(QPreferences)
  • 【云原生】Prometheus整合Alertmanager告警规则使用详解
  • [集成学习]基于python的Stacking分类模型的客户购买意愿分类预测
  • CentOS 7 yum官方源失效
  • 分布式ID是什么?有哪些解决方案?
  • 准备跳槽了(仍然底层为主,ue独立游戏为辅)
  • 贝叶斯算法理论
  • vue3 antdv3 a-range-picker a-date-picker 获取选择中的日期值
  • LeetCode热题100刷题16:74. 搜索二维矩阵、33. 搜索旋转排序数组、153. 寻找旋转排序数组中的最小值、98. 验证二叉搜索树
  • 2017 前端面试准备 - 收藏集 - 掘金
  • exports和module.exports
  • JavaScript工作原理(五):深入了解WebSockets,HTTP/2和SSE,以及如何选择
  • Java面向对象及其三大特征
  • Rancher如何对接Ceph-RBD块存储
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 每天10道Java面试题,跟我走,offer有!
  • 腾讯视频格式如何转换成mp4 将下载的qlv文件转换成mp4的方法
  • 腾讯优测优分享 | Android碎片化问题小结——关于闪光灯的那些事儿
  • 我的面试准备过程--容器(更新中)
  • 在Mac OS X上安装 Ruby运行环境
  • 【干货分享】dos命令大全
  • #AngularJS#$sce.trustAsResourceUrl
  • #Java第九次作业--输入输出流和文件操作
  • #Linux(Source Insight安装及工程建立)
  • #每天一道面试题# 什么是MySQL的回表查询
  • (2)nginx 安装、启停
  • (6)设计一个TimeMap
  • (力扣题库)跳跃游戏II(c++)
  • (每日一问)计算机网络:浏览器输入一个地址到跳出网页这个过程中发生了哪些事情?(废话少说版)
  • (算法设计与分析)第一章算法概述-习题
  • (文章复现)基于主从博弈的售电商多元零售套餐设计与多级市场购电策略
  • (一)十分简易快速 自己训练样本 opencv级联haar分类器 车牌识别
  • .libPaths()设置包加载目录
  • .NET C# 使用 iText 生成PDF
  • .NET CORE 3.1 集成JWT鉴权和授权2
  • .net core 调用c dll_用C++生成一个简单的DLL文件VS2008
  • .NET/C# 项目如何优雅地设置条件编译符号?
  • .net项目IIS、VS 附加进程调试
  • // an array of int
  • /boot 内存空间不够
  • /etc/apt/sources.list 和 /etc/apt/sources.list.d
  • /etc/fstab和/etc/mtab的区别
  • @Controller和@RestController的区别?
  • [20171113]修改表结构删除列相关问题4.txt
  • [AIGC] Kong:一个强大的 API 网关和服务平台
  • [BJDCTF2020]The mystery of ip1
  • [C++] 轻熟类和对象
  • [Cloud Networking] Layer 2
  • [CQOI 2010]扑克牌