Jenkins里构建一个简单流水线

前情提要:传送门,我在虚拟机里装了一个Ubuntu,然后在docker里装了一个Jenkins及GitLab!
点击这里下载或fork一个简单的Java项目用于学习Jenkins!

目标:修改代码后,上传到git,在在Jenkins流水线里完成【自动拉取代码 】--【打包 】--【运行

1.安装Docker插件

由于我的虚拟机上没有安装Maven,又不想单独安装一份,这里需要在Jenkins里使用Docker的功能,需要提前下载Docker插件,而我Jenkins本身又是在Docker里,因此在Jenkins容器启动时就需要挂载 Docker 套接字等。也可以加上"-u root"解决一些权限问题。

复制代码
-u root
-v /var/run/docker.sock:/var/run/docker.sock
-v /usr/bin/docker:/usr/bin/docker

2.配置全局git凭据

2.1配置凭据提供者,选择账号密码方式

2.2 进入凭据管理,添加凭据

2.3 选择我们在2.1里添加的凭据提供者,账号密码方式,输入git的账号密码,添加完成以后回到凭据列表页可以看到,新增了一个凭据!

3.添加流水线

3.1 回到首页,选择【新建任务】-流水线】

3.2 上面的配置暂时不管,拖动到最下方,选择【Pipline script from SCM】, 如果使用【Pipline script】则是在下方输入框手动写命令,目前是入门阶段,暂时使用更简单的手动配置方式!这种方式是使用项目根目录下的文件【JenkinsFile

3.3 SCM选择【Git】,填写仓库地址,选择之前配置好的凭据,设置分支,注意:如果使用的GitLab,并且和Jenkins在同一个Docker里,这里的Ip需要更改成Docker的IP:172.17.0.1

3.4点击开始构建,进入构建任务的【Console Output】可以看到构建过程,下图就是自动从仓库拉取代码


3.5 在项目根目录有个文件【JenkinsFile】,这个文件就是自定义构建过程,其中Maven是通过Jenkins去控制Docker安装启动的,也可以提前在Docker里安装好,如果没有提前安装,会自动下载!

3.6 maven会自动启动,然后继续下面的【构建阶段】,完成对Java项目的打包!

3.7 代码中的两个单元测试也都在测试阶段进行了验证

3.8 最后运行程序

至此,一个简单的流水线任务已经完成,接下来就是学习【JenkinsFile】语法,然后自定义流程。另外这个流水线还有个问题是每次提交了代码,需要手动点击构建,还是麻烦得很!(懒癌发作~~~~)

未完待续...

相关推荐
AH_HH3 分钟前
Spring Boot 4.0 发布总结:新特性、依赖变更与升级指南
java·spring boot·后端
mqiqe4 分钟前
【Spring AI MCP】六、SpringAI MCP 服务端 STDIO & SSE
java·人工智能·spring
Tadas-Gao5 分钟前
Spring Boot 4.0架构革新:构建更精简、更安全、更高效的Java应用
java·spring boot·分布式·微服务·云原生·架构·系统架构
vx_bisheyuange18 分钟前
基于SpringBoot的库存管理系统
java·spring boot·后端·毕业设计
专注于大数据技术栈20 分钟前
java学习--单例模式之懒汉式
java·学习·单例模式
czhc114007566342 分钟前
C# 1120抽象类 static
java·开发语言·c#
whltaoin1 小时前
【 Java微服务 】Spring Cloud Alibaba :Nacos 注册中心与配置中心全攻略(含服务发现、负载均衡与动态配置)
java·微服务·nacos·springcloud·注册中心·配置中心
你不是我我1 小时前
【Java 开发日记】有了解过 SpringBoot 的参数配置吗?
java·开发语言·spring boot
稚辉君.MCA_P8_Java1 小时前
Gemini永久会员 Java HotSpot 虚拟机(JVM)的优点
java·jvm·后端
ivanfor6661 小时前
多租户架构的三级权限体系:设计逻辑与精准控制实现
java·开发语言·数据库