Jenkins部署spring boot 项目
一、安装Maven Integration插件
系统管理->插件管理 -> 搜索框查找Maven Integration,可选插件中进行输入安装
1、在全局工具配置中安装maven
配置Maven
进入【首页】–【系统管理】–【全局配置】,拉到最下面maven–maven安装
二、创建任务
1、选择源码管理,配置git参数
为GIT添加凭证
选择“username with password”,输入用户名和密码,点击保存
选择自己配置的账号和密码
-
配置Pre Steps
- clearn install -Dmaven.test.skip=true
三、报错处理
- jenkins 构建maven工程出现--Unknown lifecycle phase "clean"
- 如下图
- 原因是clean 指令没有识别出来,解决办法首先 在pom.xml中加入
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
</plugin>
</plugins>
</build>
将构建指令改为
org.apache.maven.plugins:maven-clean-plugin:clean install
四、运行spring boot 项目
1、编写docker文件
把spring boot 项目构建成一个容器进行运行
编写docker文件Dockerfile,内容如下
FROM openjdk:8-jdk
VOLUME /tmp
ADD start/target/start-2.0.jar app.jar
EXPOSE 8083
ENTRYPOINT ["nohup","java","-jar","/app.jar","--spring.profiles.active=prod"]
把该文件放在项目根目录中
2、修改Jenkins配置 Pre Steps
增加调用顶层 Maven 目标和执行 shell
cd /var/jenkins_home/workspace/archive-mange-v2.0/archive-sys docker stop archivesys || true docker rm archivesys || true docker rmi -f archive-sys || true docker build -t archive-sys . docker run -d -p 8083:8083 --name archivesys archive-sys:latest .:表示Dockfile在当前路径
3、错误处理
在执行Jenkins构建时出现 docker not found错误时,由于没有把docker命令挂接到容器中,所以需要重新运行容器,并把docker 命令挂接到容器中。
例如:在运行容器时执行如下命令
docker run -u root -d --name jenkins_01 -p 9988:8080 -p 50000:50000 \ -v /opt/jenkins_home:/var/jenkins_home \ -v /var/run/docker.sock:/var/run/docker.sock \ -v /usr/bin/docker:/usr/bin/docker \ jenkins/jenkins