springboot+jenkins,部署到docker上,实现自动化

117 阅读1分钟

centos7上安装docker环境,jenkins环境(jdk11),maven环境

docker镜像,只需要依赖jdk8

增加一个DockerFile文件

dockerFile

# 使用 Oracle JDK 8  作为基础镜像
FROM java:8

# 作者信息
MAINTAINER "kab"

# 添加一个存储空间
VOLUME /tmp

# 暴露 Spring Boot 应用程序运行的端口(如果需要的话)
EXPOSE 9080
ARG JAR_FILE=target/docker-springboot2-ff.jar
# 往容器中添加jar包
ADD ${JAR_FILE} app.jar

# 运行 Spring Boot 应用程序
ENTRYPOINT ["java", "-Djava.sucurity.egd=file:/dev/urandom","-jar", "/app.jar"]

jenkins新建任务

jenkins --> New Item --> Maven project

设置gitlab仓库

--> Source Code Management

Build

pom.xml

maven

--> Invoke top-level Maven targets

Maven Version

maven

Goals

clean package -Dmaven.test.skip=true

设置编译成功后,docker运行脚本

--> Post Steps -->Execute shell

cd /var/lib/jenkins/workspace/docker-springboot2-ff
docker stop docker-springboot2-ff || true
docker rm docker-springboot2-ff || true
docker rmi docker-springboot2-ff || true
docker build -t docker-springboot2-ff .
docker run -d -p 9080:9080 --name docker-springboot2-ff docker-springboot2-ff:latest