当前位置: 首页 > 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

http://www.lryc.cn/news/403296.html

相关文章:

  • RocketMQ中概念知识点记录 和 与SpringBoot集成实现发送 同步、异步、延时、批量、tag、key、事务消息等
  • 云计算实训09——rsync远程同步、自动化推取文件、对rsyncd服务进行加密操作、远程监控脚本
  • 【DGL系列】DGLGraph.out_edges简介
  • 掌握品质之钥:ISO9001质量管理体系认证的巨大价值
  • 网络开局 与 Underlay网络自动化
  • MySQL MVCC原理
  • 编织文字的魔法:探索WebKit的CSS文本效果
  • 如何在Linux上部署Ruby on Rails应用程序
  • 极狐GitLab 如何管理 PostgreSQL 扩展?
  • SpringBoot如何使用Kafka来优化接口请求的并发
  • 全面了解不同GPU算力型号的价格!
  • Linux网络编程之UDP
  • graham 算法计算平面投影点集的凸包
  • 【海外云手机】静态住宅IP集成解决方案
  • 最新!CSSCI(2023-2024)期刊目录公布!
  • C语言 | Leetcode C语言题解之第237题删除链表中的节点
  • linux LED代码设计
  • Jvm基础(一)
  • 深入理解FFmpeg--软/硬件解码流程
  • 新的铸造厂通过 PROFIBUS 技术实现完全自动化
  • 【UE5.1】NPC人工智能——04 NPC巡逻
  • 计算机视觉主流框架及其应用方向
  • 群晖 搭建alist 记录
  • 【北航主办丨本届SPIE独立出版丨已确认ISSN号】第三届智能机械与人机交互技术学术会议(IHCIT 2024,7月27)
  • 深入浅出WebRTC—NACK
  • 简单工厂模式、工厂模式和抽象工厂模式的区别
  • JVM-垃圾回收与内存分配
  • Jolt路线图
  • NEEP-EN2-2019-Text4
  • docker 部署wechatbot-webhook 并获取接口实现微信群图片自动保存到chevereto图库等