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

93 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 节点容器化自动构建流程
#### 设置GitLab服务器钩子
运用GitLab的webhook勾选push Event当每次有push操作的时候会触发webhook向Jenkins发送事件。
#### Jenkins配置主要步骤
##### 新建Job项目
新建项目,并添加项目描述。
![image-20211117230728593](/Users/tiangui/Desktop/yaxin/zhenjianhui_830/12、容器化相关/节点容器化自动构建流程.assets/image-20211117230728593.png)
##### Git项目源配置
![image-20211117230305803](/Users/tiangui/Desktop/yaxin/zhenjianhui_830/12、容器化相关/节点容器化自动构建流程.assets/image-20211117230305803-7161408.png)
##### Maven构建配置
![image-20211117230900667](/Users/tiangui/Desktop/yaxin/zhenjianhui_830/12、容器化相关/节点容器化自动构建流程.assets/image-20211117230900667.png)
##### 清理镜像构建服务器的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
```