Jenkins: 配置自动化发布脚本

简单的Shell脚本实现自动化构建部署-适合前后端分离的小网站 大家在生活中经常会自己写一点小代码。然后部署在公有云的服务器上。但是一般像阿里,腾讯等服务商,提供的机器内存并不是很大。如果想装入一个jenkins之类的服务,会比较占用CPU和内存的资源。但是人手的部署又是比较麻烦的。所以我这里提供了一个思路,使用shell脚本来简单实现自动化构建。 阅读详情

Jenkins 配置自动化发布脚本

  • 在Jenkins的 一个工程项目任务中, 点击左侧 配置 栏
  • 在下面的 Build Steps 中,点击上面的 可用的环境变量列表
    • 找到里面有一个 WORKSPACE 的变量
    • 这个变量指向我们的jenkins下工程项目源码的目录
    • 需要把这个变量利用起来
  • 在 Build Steps 下执行 shell,假设这是一个前端的工程
    echo $WORKSPACE
    cd $WORKSPACE
    npm install
    npm run build
    
    • 以上,就可以进行构建了, build 完成后, 会生成dist目录
    • 我们要发布的就位于 dist 目录下
  • 接下来就是ssh上传, 将 dist 目录下的文件部署到远程服务器
    • 回顾下之前 Dashboard / 系统管理 / 系统配置
    • 找到下面的 SSH Server, 找到 Hostname, 这里可能是一个 ip地址, 比如:192.168.3.22
    • 可以通过 ssh 登录服务器: $ ssh root@192.168.3.22
    • 假设之前在jenkins上填写默认的路径是 /root, 我们想要发布到 /root/resource/nginx 中
  • 现在要做文件上传发布,回到之前填写 执行 shell的地方,点击 增加构建步骤
  • 选择 Send files or execute commands over SSH
  • 这时候出现了 Send files orexecute commands over SSH 面板
  • 这里,出现 SSH Server面板, 之前配置好了,直接选择默认的 Server
  • 下面是 Transfers, Transfer Set Source files
    • 这里,填入 dist/**
  • 下面的 Remote directory 填入
    • /resource/nginx/项目名称目录
    • 按照之前配置,默认登录在了 /root 目录,所以这里只要如上填写即可
    • 前面不能添加 /root
  • 特别注意
    • 这里,直接上传到 /resource/nginx/项目名称目录 其实是不行的
    • 因为,如果之前有过发布,可能会导致上传不成功
    • 所以,这里上传目录应该填入 /resource/nginx/项目名称目录-tmp
    • 这里,先上传到一个临时目录,下面还有一个 Exec command 的表单需要填写命令
    • 在 Exec command 中 填入
      rm -rf /root/resource/nginx/项目名称目录
      mv /root/resource/nginx/项目名称目录-tmp/dist /root/resource/nginx/项目名称目录
      rm -rf /root/resource/nginx/项目名称目录-tmp
      
    • 可以看出,这里对目录文件删除后进行更新
    • 点击最下面的 应用 按钮
  • 重新测试,回调项目中,点击 立即构建
  • 还有
    • 如果 /root/resource/nginx/ 映射已经绑定了某个域名,如 https://abc.com
    • 在访问 nginx 目录下的 项目名称目录 文件夹时候,这时候需要访问 https://abc.com/项目名称目录
    • 如果这个前端项目是一个vue2的项目,注意在 vue.config.js 中 publicPath 配置成 /项目名称目录
  • 这时候,整个发布流程就搞定了
Jenkins自动化部署项目 系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结 前言 提示:这里可以添加本文要记录的大概内容: 例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。 提示:以下是本篇文章正文内容,下面案例可 阅读详情

相关推荐

Jenkins自动化部署(三)流水线脚本-pipeline(多图)

之前看了很多博主写的文章,都是要先去配置环境变量,安装插件等等,其实新版本的jenkins在第一次登陆时选择的推荐插件中,已经把我们常用的都安装好了,以我的需求不需要去配置那些东西了,我拉取代码是在github上,使用git插件就可以了,打包docker镜像也是使用的挂载到物理机的docker服务,使用的是物理机上的docker服务来打包镜像,所以其他那些插件一个都用不上。 一、建立pipeline任务(提示:下方多图操作,按顺序仔细看) 二、拉取代码,并生成doc...

1万+

Jenkins 实现自动化部署

内容是我们修改后的值,说明Jenkins确实重新拉取项目重新部署了,nice啊,以后我们修改完代码后直接提交就可以了,部署就不用管了,是不是很香。我Gitee上的SpringBoot项目地址是:https://gitee.com/colinWu_java/JenkinsTest.git。

Tongyao 1694

CI/CD—Jenkins配置一次完整的jar自动化发布流程

要创建自动化发布,需要准备一台测试服务器提前安装好java运行所需的环境,JDK版本最好和Windows开发机器上的版本一致,在Jenkins上配置将构建好的jar上传到测试服务器上,测试服务器自动启动构建好的jar,这些步骤只需要在Jenkins完成相关的配置即可。

dghfttgv的博客 1982

jenkins自动化部署

如果这时项目也部署到jenkins所在的服务器,势必会导入项目在后期运行时由于资源不够,而导致无法运行。思考:jenkins打包好的项目jar,在自己所在的服务器,而项目运行需要在其他服务器。我们在远程复制时需要输入另一台服务器47的密码。修改idea中的代码并提交到gitee上,会自动触发jenkins -- 拉取 -- 编译 -- 打包。当git仓库更新 jenkins就会自动化拉取 --- 翻译 --- 打包 ---- 部署 ---查看自动拉取 -- 翻译 -- 打包到哪个目录下。

m0_73809543的博客 3609

Unity与IOS交互,调用IOS系统相机和相册

与IOS的交互,在步骤上要比android简单许多,不会产生因为系统版本,或者包名导致的许多问题。过程中最头疼的一个问题是IOS回调Unity,很简单的一个问题,搞了半天。

Hello Mingo 1万+

【3D Slicer】阈值法测量肺部病灶体积

利用3D Slicer测量肺容积

SQ的博客 4859

K8S自动化发布项目(1.4):配置jenkins的流水线脚本,实现k8s自动发布项目

第一步:安装GitLab 第二步:安装jenkins 第三步:配置钩子程序 完成第四步:实现自动化 Jenkins时区和时间问题: 第一步:安装GitLab 第二步:安装jenkins 完成第三步:配置钩子程序 1)在【系统管理】-【脚本命令行】里运行 System.setProperty(‘org.apache.commons.jelly.tags.fmt.timeZone’, ‘Asia/Shanghai’) 2)在jvm中修改 JAVA_OPTS=-Duser.timezone=Asia/Shangh

向上的信念 1776

如何优化Silvaco二极管仿真网格?这些参数设置技巧让你的结果更精确

本文详细介绍了如何优化Silvaco二极管仿真网格,通过精细调整网格参数提升仿真精度。重点解析了网格密度与计算精度的权衡、关键区域识别与网格强化策略,以及掺杂分布与网格适配技术,帮助工程师在半导体器件仿真中获得更准确的结果。

t8u9v0w1x的博客 660

Jenkins 实战1:Jenkins + Maven + Git 自动化部署 手把手包学包会

至此,我们完成了一个简单的 Jenkins CICD,大家思考一下还有什么需要改进的地方?

matrixlzp的博客 1430

别再只调IoU了!给YOLOv8换上NWDLoss,实测小目标检测精度提升明显

本文深入探讨了YOLOv8在小目标检测中的优化策略,重点介绍了NWDLoss(Normalized Wasserstein Distance Loss)的应用优势。通过对比实验证明,NWDLoss能有效解决传统IoU损失函数的局限性,显著提升小目标检测精度,在遥感影像和交通监控等场景中表现尤为突出。文章提供了详细的代码实现和训练技巧,帮助开发者快速集成这一先进技术。

weixin_29072299的博客 280

先进封装技术的一些优缺点探讨

半导体封装技术是半导体制造过程中的关键环节,它不仅保护了芯片免受物理损伤,还提供了电气连接和散热功能。随着技术的发展,出现了多种先进的封装技术,每种技术都有其特定的应用场景和优缺点。

阿拉伯梳子的专栏 2171

Jenkins流水线项目发布

(2)时钟同步 (3)部署安装源 (4)确保没有旧版jdk (5)下载jdk (6)下载lrzsz (7)下载tomcat9,并解压安装部署 浏览器访问:192.168.100.10:8080/jenkins,在服务端查看密码 2、安装推荐的插件(安装过程较长) (1)使用脚本 再次进行构建–此时构建时间非常长第二次构建就是为了安装软件包,生成站点, 站点在/root/.jenkins/workspace/test/target/目录下,通过日志文件可以看到该目录下就有个压缩文件为ja

2201_75894418的博客 1101

卡尔曼滤波与目标追踪

卡尔曼滤波与目标追踪为什么要学卡尔曼滤波?卡尔曼滤波是什么?一些概率论的知识基础卡尔曼滤波完整推导状态估计计算卡尔曼增益预测和更新 卡尔曼滤波部分我打算分三节(三次博客的内容): 卡尔曼滤波与行人状态估计 扩展卡尔曼滤波(EKF)与传感器融合 过程模型,无损卡尔曼滤波(UKF)与车辆状态轨迹 为什么要学卡尔曼滤波? 卡尔曼滤波以及其扩展算法能够应用于目标状态估计,如果这个目标是行人,那么就是行人状态估计(或者说行人追踪),如果这个目标是自身,那么就是车辆自身的追踪(结合一些地图的先验,GPS等数据的话就

qq_43232556的博客 4176

Jenkins部署Spring Boot项目

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33958366的博客 171

BUG调试案例六:RK3568+国产YT8531网络PING调试案例

这次调试过程让我对后续类似问题的应对更加有信心。如果芯片在其他项目中已被验证可用,那么在我们的设计中原则上也应该能够正常工作。如果出现异常,就必须坚持追根溯源,找出具体原因和根本问题。每一次问题的解决,都是一次深入理解系统和提升能力的机会 —— 在不断探索和学习中,也在持续成长。

案例文章,高速信号 2337

OpenCV实战(1)——OpenCV与图像处理基础

OpenCV 是一个跨平台计算机视觉和机器学习库,实现了图像处理和计算机视觉方面的很多通用算法。本节将介绍 OpenCV 的基础知识,以及如何编译运行 OpenCV 程序,并介绍如何完成最基本的图像处理任务——读取、显示和保存图像。除此之外,鼠标事件和图形绘制也是 OpenCV 计算机视觉项目中常用的基本功能,本节介绍了如何使用这两个重要的 OpenCV 功能。

盼小辉丶的博客 12万+

Jenkins新建项目注意事项

Jenkins新建项目注意事项

小树苗 727

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

使用jenkins pipeline构建发布流水线

插件的安装 jenkins的安装不是本文主要内容,请自行查找。 安装完jenkins后,在主要系统管理>管理插件>可安装,在右上角搜索框里输入Pipeline查找,安装后重启jenkins. 新建Pipeline任务 在jenkins主页点击新建任务(New Item),选择流水线任务 pipeline任务的配置 General:Prepare an environment for...

zuijiazhenrong的博客 9182

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

手把手教你Jenkins+Pytest+Allure 集成测试环境

cd 进入相应的目录,然后通过 source 激活相应的 Python 虚拟环境,我只在该虚拟环境中安装了 pytest 库,随后正常使用 pytest 则可,此时依旧使用 pytest 来跑 requests/tests 中的测试代码,但 --alluredir 设置的路径。通过 allure 插件,将 jenkins、pytest、allure 链接在一起,pytest 负责测试,测试生成的报告可以通过 allure 生成图像化界面,而 jenkins 自动化两个过程。

Hacker_Nightrain的博客 627

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

硬核实战:内网 Windows 环境下 Jenkins + Gitee 自动化部署 Vue项目

本文介绍了在内网Windows服务器环境下使用Jenkins实现前端自动化部署的解决方案。针对无法使用Webhook的内网环境,采用SCM轮询方式触发构建;针对Vue2与高版本Node的兼容性问题,配置NODE_OPTIONS参数;并提供了完整的Windows批处理脚本,实现从代码拉取、依赖安装、项目构建到Nginx部署的全流程自动化。

唐璜Taro的博客 883

<span class=“js_title_inner“>全网最全的 Jenkins + Maven + Git 自动化部署指南!</span>

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。在左侧导航栏中,找到并点击。

weixin_44421461的博客 51

jenkins构建微服务中的项目

目录 1、初始化Jenkins环境和插件 插件安装 jenkins全局配置 部署服务器信息 2、部署项目 安装好Jenkins的所有环境Jdk,maven,git ,jenkins等环境后(具体步骤参考https://blog.youkuaiyun.com/weixin_42324471/article/details/113743646),现在开始正式使用jenkins。 1、初始化Jenkins环境和插件 首先访问jenkins界面:http://IP地址:8080,出现下列页面 插件安装..

weixin_42324471的博客 794

全网最全的 Jenkins + Maven + Git 自动化部署指南!

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能。在左侧导航栏中,找到并点击。

weixin_44421461的博客 81

Docker + Jenkins + Nginx实现前端自动化部署

前端自动化部署一直以来概念很清楚知道怎么回事,但是其中怎么操作没怎么研究过,虽然之前环境都搭起来了,但是也只是Jenkins构建项目成功,比如提交代码之后怎么触发自动构建,打包后的文件如何迁移到指定服务器的文件目录下,流水线如何搞等等这都是我之前想想头疼也只能头疼的问题。终于还是费了点心思搞了搞自动化部署,又花了大量时间来记录这个过程。

t194978的博客 398

Jenkins发布配置手册

1、本脚本可实现批量发布,前提条件脚本注释中已明确 2、脚本中的”hosts“文件IP是你自己的,理论上可以指定无限台机器,可以额外维护一个hosts文件,本脚本例子中直接将要发布的机器IP使用EOF的形式直接写到脚本中了 3、start.sh是项目启动脚本,Java的jar文件一般直接通过 java -jar 跟着你的参数进行启动即可

怀揣梦想,一颗执着于技术的心从未磨灭,内心住着一颗顽强的小强时刻提醒自己层层突破自我,同时也成就他人 695

jenkins 构建前执行shell_SpringCloud实战:Jenkins持续集成

简单来说,大型系统拆分为多个服务后,每个小团队负责一个服务,服务的更新、发布会变得很频繁,通过工具监控代码的每次提交,持续进行自动化的构建过程,就是持续集成。为什么要用 Jenkins 做持续集成?Jenkins是一个功能强大的应用程序,允许持续集成和持续交付项目,是一个免费的开源平台,可以处理任何类型的构建或持续集成。安装 Jenkins 与其他必备环境1.服务器环境:centos7(192.1...

weixin_39532421的博客 492
上一篇: Jenkins: 搭建Jenkins服务,调通Webhook链路
下一篇: Jenkins: 配合docker来部署项目
Wang's Blog
博客等级 码龄12年 7433粉丝 2421原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Wang's Blog

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值