linux中安装部署Jenkins,成功构建springboot项目详细教程

参考别人配置Jenkins的git地址为https,无法连上github拉取项目,所以本章节介绍通过配置SSH地址来连github拉取项目

目录:

1、springboot项目

1.1 创建名为springcloudproject的springboot项目工程

1.2 已将工程上传到github中,github工程名为companyProject(这里随便取)

2、linux环境

2.1 已安装好jdk、maven、git

2.2 配置git

2.3 生成公钥

3、 Github配置

3.1 创建Personal access Token

3.2 生成SSH?Keys

3.3 配置webhook

3.4 复制工程的SSH地址下来,后续用,如图

4、Jenkins安装以及环境文件配置

4.1 安装Jenkins

4.2 Jenkins初始化

4.3 全局配置git和maven

4.4 插件安装

4.5 全局变量设置

5、创建Jenkins任务

5.1 新建任务

5.2 填写任务名

5.3 填写任务配置信息

5.4 构建测试

5.5 查看日志


内容:

1、springboot项目

1.1 创建名为springcloudproject的springboot项目工程

主工程下新建个deploy文件夹,并建test.sh文件,内容为: echo "test ....",如图

1.2 已将工程上传到github中,github工程名为companyProject(这里随便取)

2、linux环境

2.1 已安装好jdk、maven、git

2.2 配置git

执行以下两行命令

复制代码
git config --global user.name "git账号"
git config --global user.email "git绑定的邮箱"

如图可查看

2.3 生成公钥

执行命令

复制代码
ssh-keygen -t rsa -C "刚刚设置的邮箱"

三次回车(图中红色框框),可得公钥生成文件路径,如下图

查看公钥,上图中/home/company/.ssh/id_rsa.pub文件

拷贝查看到文件的所有内容,后续使用

3、 Github配置

3.1 创建Personal access Token

3.1.1 打开个人Settings页面

3.1.2 打开Developer Settings 页面

3.1.3 依次点击"Personal access tokens" -> "Tokens(classic)" -> "Generate new token"按钮

3.1.4 勾选如下图两处地方,跟填名称地方就可以了

3.1.5 提交后生成token,复制备份下来

3.2 生成SSH Keys

3.2.1 按照3.1.1步打开Settings页面

3.2.2 依次点击"SSH and GPG keys" -> "New SSH key" 按钮

3.2.3 填信息生成SSH Key

key栏框位置填2.3步获取的公钥

3.3 配置webhook

3.3.1 打开工程的Settings -> Webhooks -> Add webhook按钮

3.3.2 添加webhook信息

如下图,把地址ip改为自己部署Jenkins的服务地址就好了,后面的"/github-webhook/"要加上

3.4 复制工程的SSH地址下来,后续用,如图

4、Jenkins安装以及环境文件配置

4.1 安装Jenkins

https://jenkins.io/download 到Jenkins的官网自行下载所需的war包

启动命令:java -jar jenkins.war ---httpPort=8080

然后访问http://xx.xxx.xx.xx:8080即可

我这里是部署在阿里云服务器,所以要放开8080端口

4.2 Jenkins初始化

打开浏览器页面,输入http://xx.xxx.xx.xx:8080

复制此路径

在shell中执行 cat /root/.jenkins/secrets/initialAdminPassword

查看初始密码,然后复制粘贴到页面登陆,选择建议的插件,然后重新设置用户名密码

4.3 全局配置git和maven

4.3.1 打开"系统管理"

4.3.2 点击"全局工具配置",配置git和maven的安装路径

如果git路径不知道,可以通过命令whereis git查看

4.4 插件安装

4.4.1 打开"系统管理" -> "插件管理"

4.4.2 搜索安装Gitlab插件和Maven Integration插件

Gitlab插件:当gitlab有push时触发jenkins拉取代码和将构建状态发送回GitLab Maven Integration:用来简化建造Maven工程.

安装完插件后可以重启一下,直接在网址后边拼上/restart 可以重启Jenkins

4.5 全局变量设置

4.5.1 打开"系统管理" -> "系统配置"

4.5.2 往下找到"github服务器",点击添加,然后在API URL框填上"https://api.github.com"

4.5.3 点击凭据下的"添加"按钮

类型选择 "Secret text"

Secret项填 3.1.5步生成的token,最后两个不用填

5、创建Jenkins任务

5.1 新建任务

5.2 填写任务名

5.3 填写任务配置信息

5.3.1 选择"GitHub项目",url为自己项目的url

5.3.2 Triggers选择(这个看自己需求)

5.3.3 流水线配置

流水线配置有两种,这里都介绍下

5.3.3.1 Pipeline script(整章节是这种配置,此配置进行拉取github代码,并mvn打包java工程)

内容如下

复制代码
pipeline {
    agent any
    stages {
        stage('Checkout') {
            steps {
                //进行拉取代码
                git branch: 'dev', credentialsId: '661ea938-9146-4001-bba6-ffa195311c51', url: 'git@github.com:DaQinDiGuo011/companyProject.git'
            }
        }
        stage('Compile-Package') {
            steps {
                //进行编译打包
				sh 'mvn -Dmaven.test.failure.ignore=true clean package'
            }
        }
    }
}

5.3.3.2 Pipeline script from SCM(此选项是拉取github代码,然后执行sh脚本,这部只是为了介绍用法)

Repository URL填写3.4步中的地址

Credentials选择下一步操作添加的用户密码

我使用的是dev分支,所以新增了个dev

gitweb地址填写自己项目的浏览器地址

点击添加Credentials

用户密码为自己登录github上的用户密码

脚本路径,添加完保存

该路径为1.1步里工程目录下的deploy/test.sh脚本

5.4 构建测试

点击构建,开始把项目pull到工作空间,并编译打包

5.5 查看日志

点击执行的任务里,点击"Console Output"查看日志,可到部署Jenkins服务器路径查看Jenkins拉取下来的项目并编译的日志,日志最后可看到工作空间地址

相关推荐
张小姐的猫11 分钟前
【Linux】网络编程 —— HTTP协议(上)
linux·运维·服务器·网络·http·单例模式·策略模式
小稻穗27 分钟前
市场调研样本选型坐标系:2026六家国内样本平台能力横向校验
大数据·运维·数据分析
AOwhisky1 小时前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
AOwhisky1 小时前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
imc.112 小时前
linux基础IO
linux·运维·服务器
躺不平的理查德2 小时前
让Ubuntu 的第二块网卡 ens37 永久固定为 192.168.30.111
运维·服务器
bitbrowser2 小时前
Facebook 验证反复回到原页面,应该从哪里排查
运维·服务器·facebook
Land03293 小时前
AI网页元素变化无法自动修复?自带元素自愈的自动化解决方案
运维·人工智能·ai·自动化·rpa
fengyehongWorld3 小时前
Jenkins 安装与简单配置
运维·jenkins
云智慧AIOps社区3 小时前
2026 国产化 ITSM 替代指南:横向测评 ServiceNow、轻帆云、Jira等五款主流IT服务管理平台
运维·人工智能·运维开发·it服务管理·itsm平台