Files
obsidian_note/技术探究/docker容器/节点容器化自动构建流程.md
2025-12-04 09:12:56 +08:00

2.1 KiB
Raw Permalink Blame History

节点容器化自动构建流程

设置GitLab服务器钩子

运用GitLab的webhook勾选push Event当每次有push操作的时候会触发webhook向Jenkins发送事件。

Jenkins配置主要步骤

新建Job项目

新建项目,并添加项目描述。

image-20211117230728593

Git项目源配置

image-20211117230305803

Maven构建配置

image-20211117230900667

清理镜像构建服务器的Jar包并重新上传
  • 采用远程执行脚本清理镜像构建服务器的旧Jar包
  • 复制新构建成功的Jar至镜像构建服务器上
清理旧的容器实例
container=`docker container ls -a | grep $container_name | awk '{print $1}'`

echo 'stop container ' $container
[[ -n $container ]] && docker stop $container

echo 'rm container ' $container
[[ -n $container ]] && docker rm $container
清理旧的镜像实例
image=`docker images | grep $image_name | awk '{print $3}'`

echo 'rm image ' $image
[[ -n $image ]] && docker rmi $image
构建镜像文件

dockerfile如下

# 基础镜像
FROM  openjdk:8-jre
# author
MAINTAINER ruoyi

# 挂载目录
VOLUME /home/ruoyi
# 创建目录
RUN mkdir -p /home/ruoyi
# 指定路径
WORKDIR /home/ruoyi
# 复制jar文件到路径
COPY ./jar/ruoyi-modules-system.jar /home/ruoyi/ruoyi-modules-system.jar
# 启动系统服务
ENTRYPOINT ["java","-jar","ruoyi-modules-system.jar"]

构建镜像:

docker build -t ruoyi-modules-system:0.0.1  . 
运行容器实例
new_image=`docker images |grep $image_name |awk '{print $3}'`

[[ -n $new_image ]] && docker run -d -p 19201:9201  --name $container_name $new_image