jenkins部署docker

首先在上一篇,【詹金斯jenkins配置maven项目】,以及成功构建了一个工程。只要我上传代码,那么他就会自动的进行更新。

现在使用他来部署到docker里

这篇是上一篇的后置,建议先看前一篇

1.在jenkins的配置中

使用shell将DockerFile从代码文件中拉取到target中(防止打成jar包后,无法直接访问)

这里首先创建一个dockerFile,并且将他丢到项目中。

FROM frolvlad/alpine-oraclejdk8
RUN echo "Asia/Shanghai" > /etc/timezone
VOLUME /tmp
ADD FossCheck-engine-5.1-release.jar app.jar
ENTRYPOINT [ "sh", "-c", "java $JAVA_OPTS  -Djava.security.egd=file:/dev/./urandom -Xms2000m -Xmx2000m -jar /app.jar  --spring.profiles.active=testdocker" ]

(1)dockerFile中的红色内容,与jar包名保持一致

(2) 创建docker文件夹并且将Dockerfile放到此目录中

 (3)在jenkins中创建一个shell命令

(4)命令如下

cp $WORKSPACE/myCode/src/main/docker/Dockerfile $WORKSPACE/myCode/target/Dockerfile

 红色的是项目名称指向dockerfile的路径,WorkSpace是项目之前的路径。

 

 

2.现在使用docker去读取此file并且 创建镜像

(1)Directory for Dockerfile 填写的内容是之前存放Dockerfile的目录(仅仅到目录即可,他会自动扫描)

(2)Cloud选择docker

(3)image是镜像打包的名称(必须指定到docker具体的仓库名,之前因为这个报错,这是修改过的。)

 

勾选下面2个按钮,以及添加账号

 

 

到这里先点击应用,之后进行构建。

 

 构建成功。

扩展,我们公司采用的是rancher管理docker(rancher结合了k8s,比k8s的功能更加强大)。

现在在jenkins中增加rancher2管理

新增rancher

 

(1)输入内容  : 秘钥(我不知道是什么,是自带的,等我有空自己搭建rancher和jenkins的时候在整吧)

(2)输入内容:这个大家可以点击右边的问号处理

(3)输入内容:需要更新的镜像,就是之前填写的image中的值

 

 

Guess you like

Origin blog.csdn.net/qq_38403590/article/details/120016001