【Linux】使用Jenkins + svn + springboot自动构建jar包并自动打包在服务器上运行
为了使用Jenkins自动构建Spring Boot项目并在服务器上运行,你需要完成以下步骤:
- 安装Jenkins和配置。
- 安装Subversion(SVN)客户端。
- 在Jenkins中配置一个新的作业,并设置源代码管理为Subversion。
- 配置构建触发器和构建环境。
- 在构建环境中,添加执行Shell脚本的步骤,用于编译项目并打包Spring Boot JAR。
- 使用SSH Send Files插件或SSH Slaves插件将JAR包复制到远程服务器。
- 在远程服务器上,编写一个启动脚本,用于启动Spring Boot应用程序。
- 配置远程服务器上的定时任务或者直接通过SSH执行启动脚本。
以下是Jenkins的配置步骤和相关Shell脚本示例:
Jenkins配置步骤:
- 安装Jenkins和SVN。
- 在Jenkins中创建一个新的作业。
- 在源代码管理部分,填写SVN仓库的URL。
- 在构建触发器中,选择适合你的触发条件(如定时或者提交代码时)。
- 在构建环境中,配置环境变量。
- 添加构建步骤,选择执行shell。
- 在Shell脚本中编写构建和打包命令。
- 安装SSH Send Files插件,并配置远程服务器的连接信息。
- 添加Send Files步骤,指定要发送的文件和目标服务器。
- 在远程服务器上配置定时任务或者SSH直接执行启动脚本。
Shell脚本示例:
#!/bin/bash
# 清理工作空间
rm -rf /var/lib/jenkins/workspace/your-job-name/*
# 从SVN更新代码
svn update /var/lib/jenkins/workspace/your-job-name
# 构建Spring Boot项目
cd /var/lib/jenkins/workspace/your-job-name
mvn clean package
# 复制JAR到远程服务器
scp target/your-app.jar user@remote-server:/path/to/your/app.jar
# 在远程服务器上启动应用程序
ssh user@remote-server /path/to/your/start-app.sh
start-app.sh脚本示例:
#!/bin/bash
cd /path/to/your/
nohup java -jar /path/to/your/app.jar > /path/to/your/app.log 2>&1 &
确保Jenkins具有执行SVN更新、编译和复制文件的权限,同时远程服务器上的相关目录权限也应当设置正确。此外,SSH连接需要配置免密登录,以便Jenkins能自动化执行这些步骤。
评论已关闭