使用 Jenkins 自动化部署实现原理| 学习笔记

简介: 快速学习使用 Jenkins 自动化部署实现原理。

开发者学堂课程【基于 Docker  Jenkins 实现自动化部署 使用 Jenkins 自动化部署实现原理】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/637/detail/10176


使用 Jenkins 自动化部署实现原理

 

内容介绍

一、手动部署的流程

二、开发者提交代码

三、Jenkins 获取远程代码

四、自动将源代码实现打包

五、执行 shell 脚本启动

 

一、手动部署的流程

首先思考一个问题:

你们公司的项目是如何发布的?

答案有许多,最常见的就是手动部署。

下面简单介绍一下手动部署的流程。

首先需要在 porn 文件里指定 spring boot 启动一个入口类的或者打 war 包,先把项目打成一个 jar 包。

输入

C\Users\Administrator\git\mayikt_springboot>mvn package

把这个项目打成一个 jar 包:

[INFO] - - - maven-compiler-plugin:3.7.0:testCompile (default-testCompile) @ mayikt_springboot - - -

[INFO] No sources to compile

[INFO]

[INFO] - - - maven-surefire-plugin:2.21.0:test(default-test) @ mayikt_springboot - - -

[INFO]

[INFO] - - - maven-jar-plugin:3.0.2:jar(default-jar) @ mayikt_springboot - - -

[INFO]Building jar:C:|\Users\Administrator\git\mayikt_springboot\target\mayikt_springboot-0.0.1-SNAPSHOT.jar

[INFO]

[INFO] - - - spring-boot-maven-plugin:2.0.1.RELEASE:repackage (default) @ mayikt_springboot - - -

[INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[INFO] BUILD SUCCESS

[INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

[INFO] Total time:6.799 s

[INFO] Finished at:2019-04-25T20:44:27+08:00

[INFO] FIinal Memory:29M/314M

[INFO] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

从而开启一个手动部署 Jar 包达到 target 这个目录.

手动部署项目的时候基本上都是以上这样操作,而且还要将最新代码同步拉取后再打成 jar 包再放到服务器上运行,像这种情况去部署微服务电商项目是非常繁琐的,所以要实现自动化部署。

例如美特教育独创的微服务电商项目是有多个服务的,秒杀服务,订单服务等等。如果逐个进行手动部署的话效率是不高的,所以在微服务的场景下,需要一套自动化的部署流程来维持运行。

 

二、开发者提交代码

开发者把代码提交到代码管理平台(svn/git,码云等),传统方式是人为拉取代码然后手动打成一个 jar 包然后再上传,这样的流程非常繁琐。

这时候需要一个专门运营的平台:Jenkins

 

三、Jenkins 获取远程代码

Jenkins:专门去管理项目打包部署完全可以实现自动化的平台

Jenkins 会获取远程代码,远程代码相当于 Jenkins 需要配置连接 git 或者是 svn 的地址。

 

四、自动将源代码实现打包

image.png

如上图所示,点击以后找到配置这一选项,在配置里面有一个专门配置svn或者是git的一个选项:源码管理。

比如git或其它的一些版本控制都可以。通过这样一个方式去实现自动化打包或者自动化运行。

 

五、执行 shell 脚本启动

开发者在 Jenkins 平台创建自动化任务:

打开 Jenkins,点击任务然后立即构建。日志里面写的非常详细,会写连接的 git 地址,然后进行打包,打包成功之后开始执行 shell 脚本进行启动

image.png

打开配置,看一下脚本,脚本的最后一行代码:

Java-jar

是指向打包成功的 jar 包,因为 Jenkins 把 jar 包打包成功之后会自动地执行一个命令。

一句话总结就是,首先搭建一个代码管理的地方,把代码提交后,Jenkins 去连接这个代码管理处(git 或 svn)拿到源代码,Jenkins 自动实现打包,执行 shell 脚本去启动项目,不需要手动进行发布,只需要点击 Jenkins 的按钮发布,整个自动化流程完毕。

相关文章
|
2月前
|
jenkins 持续交付
Jenkins自动化部署脚本
Jenkins自动化部署脚本
35 0
|
3月前
|
IDE jenkins Java
告别繁琐配置:Alibaba Cloud Toolkit插件打破Jenkins自动化部署的局限
告别繁琐配置:Alibaba Cloud Toolkit插件打破Jenkins自动化部署的局限
113 0
|
3月前
|
jenkins 应用服务中间件 持续交付
Git + Jenkins 自动化 NGINX 发布简易实现
Git + Jenkins 自动化 NGINX 发布简易实现
|
12天前
|
监控 前端开发 jenkins
Jenkins在前端项目持续部署中的应用,介绍了Jenkins作为自动化部署工具的基本概念和流程
【4月更文挑战第29天】本文探讨了Jenkins在前端项目持续部署中的应用,介绍了Jenkins作为自动化部署工具的基本概念和流程。前端持续部署涉及代码提交、构建、测试和部署四个步骤。实现过程中需配置代码仓库、构建、测试和部署任务,安装相关插件并确保环境一致性。注意事项包括代码质量控制、环境一致性、监控预警和安全管理。通过Jenkins,可提升前端开发效率和质量,但需不断学习以应对技术发展。
|
16天前
|
jenkins 持续交付 开发工具
Jenkins 快速入门 (含Jenkins + Docker + Git 简单的自动化实操)(下)
Jenkins 快速入门 (含Jenkins + Docker + Git 简单的自动化实操)
|
16天前
|
jenkins Java 持续交付
Jenkins 快速入门 (含Jenkins + Docker + Git 简单的自动化实操)(上)
Jenkins 快速入门 (含Jenkins + Docker + Git 简单的自动化实操)
|
16天前
|
jenkins Java 持续交付
Jenkins与Docker的自动化CI/CD实战
Jenkins与Docker的自动化CI/CD实战
|
24天前
|
jenkins Java 持续交付
实战指南:运用Jenkins实现Java项目的持续集成与自动化部署
【4月更文挑战第17天】Jenkins是一款强大的开源CI/CD工具,广泛用于Java项目的自动化构建、测试和部署。通过配置Jenkins环境、创建Job、设定构建触发器和步骤,实现持续集成和部署。集成Maven、Git等工具,确保代码质量并加速上线。持续部署阶段,Jenkins可将工件发布至远程服务器或云环境,实现高效、稳定的自动化流程。实践过程中,关注工作流优化、配置备份和服务器状态监控,以提升整体开发效率和软件质量。
|
1月前
|
jenkins 测试技术 持续交付
软件测试|docker搭建Jenkins+Python+allure自动化测试环境
通过以上步骤,你可以在Docker中搭建起Jenkins自动化测试环境,实现Python测试的自动化执行和Allure报告生成。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
51 6
|
2月前
|
JavaScript jenkins 持续交付
Jenkins自动构建 CI/CD流水线学习笔记(从入门到入土,理论+示例)
Jenkins自动构建 CI/CD流水线学习笔记(从入门到入土,理论+示例)
68 0

热门文章

最新文章