利用jenkins一键部署项目

Posted ldsweely

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用jenkins一键部署项目相关的知识,希望对你有一定的参考价值。

部署流程:将代码从github上拉取下来,使用maven打包,将打包后的jar通过ssh发送到服务器上,然后构建docker镜像,运行容器。

1.安装插件

如果是第一次使用jenkins,需要检查并确认安装以下插件

首页->Manage Jenkins->Manage Plugins->可选插件,选择插件后点击直接安装

Maven Integration(maven项目的任务)

Publish Over SSH(用于构建后对服务器的操作)

2.全局工具配置

因为我是在docker里安装的所以需要确认已经安装

jdk(不用设置,已经默认安装了)

git(不用设置,已经默认安装了)

maven(没有安装,需要安装)

首页->Manage Jenkins->Global Tool Configuration->maven安装

技术图片

 

3.创建一个maven项目的任务

技术图片

 

4.设置源码管理

https://github.com/Peng-star-star/spring-boot-demo-hello

技术图片

5.设置构建

注意Root POM为相对路径

技术图片

6.发送到服务器并运行

6.1创建SSH server

首页->Manage Jenkins->Sonfigure System->Publish over SSH->新增

技术图片

 

6.2其他设置

技术图片

 

6.3 dockerfile

文件在github上的地址里有,将会自动pull到jenkins里,发送到服务器上。

技术图片
#基于哪个镜像
FROM java:8-jre-alpine
#复制文件到容器
ADD demo-0.0.1-SNAPSHOT.jar /app.jar
#声明需要暴露的端口
EXPOSE 8080
#配置容器启动后执行的命令,随机数
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]
技术图片

 

6.4run.sh

文件在github上的地址里有,将会自动pull到jenkins里,发送到服务器上。

技术图片
#!/bin/bash
echo "stop container"
docker stop springboot-demo;
echo "delete container"
docker rm springboot-demo;
echo "delete image"
docker rmi itmuch/springboot-demo-0.0.1&&
echo "build image"
docker build -t itmuch/springboot-demo-0.0.1 .&&
echo "run container"
docker run -d --name springboot-demo -p 9004:8080 itmuch/springboot-demo-0.0.1;
技术图片

 

 点击确定

7.构建

点击立即构建

7.1查看输出

技术图片

点击“控制台输出”

 技术图片

8.测试

在浏览器输入http://172.16.1.144:9004/

技术图片

 

以上是关于利用jenkins一键部署项目的主要内容,如果未能解决你的问题,请参考以下文章

Jenkins+Docker 一键自动化部署 SpringBoot 项目

Jenkins+Docker 一键自动化部署 SpringBoot 项目

Jenkins+Docker 一键自动化部署 SpringBoot 项目

如何用 Jenkins+Docker 实现一键自动化部署

Gitlab+jenkins持续集成+自动化部署

Jenkins + 钉钉 + SpringBoot 极简入门,一键打包部署项目