【Linux】安装Jenkins并且打包发布springboot项目

文章目录

概要

目前Java最流行的CI/CD工具是Jenkins,问了几个前同事的公司,有很多都在使用它,而我还在本地打包手动上传,所以准备也搞一下。

整体架构流程

服务器系统:Alibaba Cloud Linux 3.2 64位

运维面板:宝塔 v11.7

是否基于Docker: 是

Jenkins版本: 2.492.3

代码git库:gitee

打包项目:springboot

技术细节

安装好宝塔面板后,直接在右侧主栏中选择并安装Docker,不要再去软件商店里找了。

安装好Docker后,不要在宝塔面板中选择安装Jenkins,因为宝塔自带的版本相对比较老...

这里我们推荐使用命令安装指定版本,因为随后需要安装maven与git的插件,为了选择最大兼容性,我们选择了2.492.3这个版本。

选择宝塔的终端,开始安装jenkins:

bash 复制代码
docker run -d \
  --name jenkins \
  --privileged \
  -p 14808:8080 \
  -v /www/docker/jenkins:/var/jenkins_home \
  -u root \
  jenkins/jenkins:2.492.3-lts-jdk17

安装好后,可以运行一下docker进程命令看一下效果:

bash 复制代码
docker ps

如果想要进入这台docker容器:

bash 复制代码
docker exec -it jenkins /bin/bash

打开浏览器访问:http://ip:14808,记得打开防火墙,端口号可以映射其他的,别冲突就好。

初次访问,需要填写原始密码:

bash 复制代码
docker exec jenkins cat /var/jenkins_home/secrets/initialAdminPassword

进入后选择自定义安装插件,如果之前安装过其他版本,并且有很多残留插件,想要一键清除掉之前的插件,可以这样做:

bash 复制代码
docker stop jenkins
# 删除所有插件文件
rm -rf /www/docker/jenkins/plugins/*
# 删除插件缓存,避免残留
rm -rf /www/docker/jenkins/cache
rm -rf /www/docker/jenkins/plugins/*.bak
rm -rf /www/docker/jenkins/plugins/*.jpi
docker start jenkins

进入主界面前需要配一个管理员账号,

第一步:安装插件: 中文插件,maven,git.

进入主界面点击系统管控,管理插件,可用插件,搜索chinese,安装中文插件

安装后重启,重启后可能就挂了,可以docker ps查看进程是否还在,不在了就docker start jenkins手动起来。

然后再安装Maven Integration与git插件。

Jenkins之所以选择2.492.3这个版本,就是因为兼容插件,如果选择更早的版本,这里安装的时候,就会有很多的失败,踩过坑才知道的。

第二步:配置 JDK 1.8 + Maven

进入 系统管理 → 全局工具配置

新增 JDK:

名称:jdk17

JAVA_HOME:/opt/java/openjdk

点 新增 Maven

名称:maven39

勾上自动安装

版本选最新的 3.9.x

点 保存

第三步:配置 Gitee 账号密码

左侧 凭据 → 系统 → 全局凭据

左上角 添加凭据

类型:用户名密码

用户名:你的 Gitee 账号

密码:你的 Gitee 密码

ID 可以空,描述写:gitee

点 创建

第四步:创建构建任务(关键)

  1. 新建任务
    任务名称:随便填
    选择:构建一个 Maven 项目
    确定
  2. 配置源码管理
    选 Git
    Repository URL:填你的 Gitee https 地址
    Credentials:选你刚才添加的 gitee 账号

Goals and options:

bash 复制代码
clean package -Dmaven.test.skip=true

点最下面 保存

第五步:立即构建,看是否打包成功

小结

提示:这里可以添加总结

例如:

提供先进的推理,复杂的指令,更多的创造力。

相关推荐
Yana.nice1 小时前
rpm -K检查RPM软件包完整性
linux·服务器·网络
Data_Journal1 小时前
Node.js网络爬取指南——简单易上手!
大数据·linux·服务器·前端·javascript
彭于晏Yan1 小时前
Maven 资源插件:非过滤文件后缀配置及风险规避
java·spring boot·maven
TEC_INO1 小时前
Linux58:rockx_vi_handle_thread线程的讲解
linux·运维·服务器
小此方2 小时前
Re:Linux系统篇(十三)特别篇: 实现Linux第⼀个系统程序−进度条
linux·运维·服务器
贫民窟的勇敢爷们9 小时前
SpringBoot整合AOP切面编程实战,实现日志统一记录+接口权限校验
java·spring boot·spring
夏日听雨眠10 小时前
LInux(逻辑地址与物理地址的区别,文件描述符,lseek函数)
linux·运维·网络
qq_5425154112 小时前
Ubuntu 22.04.4 LTS安装ToDesk最新版打不开,无响应?旧版本4.7.2_277版本分享
linux·ubuntu·todesk
火车叼位12 小时前
替代 Tiny Win10 的 Linux 方案:Debian XFCE 精简桌面搭建
linux·运维