如果你还没有安装Jpom或者想要更详细的了解Jpom,官方文档已有很详细的安装实践和介绍
https://jpom.top/pages/15b7a2/
基础安装部分请查看官方文档
前言
容器构建+项目分发
容器构建 可以很好的做环境隔离
项目分发 配合nginx负载,来实现用户无感发布项目新版本
本文已Java项目为例,jar包的方式启动,使用的项目和 ruoyi-vue(https://gitee.com/y_project/RuoYi-Vue) 项目模块目录结构一致 可作参考!
项目配置
在需要部署的逻辑节点服务器上新建一个项目
1.首先需要插件端配置项目白名单
2.新增一个项目
配置项目路径 和jar包存放目录(driver-app-api)
JVM参数看是否需要,我这里项目配置的打包方式是瘦JAR 所以启动的时候需要指定lib目录
args参数 指定启动的配置文件, 因为要启动两个项目使用同一个配置文件和不同的端口号
3.新增好之后复制此项目
复制项目要进行一些修改:
项目目录要不同,因为下面运行命令是根据项目目录中的jar文件识别出来的
args参数 中的端口号需要修改
4.找到分发列表
添加关联项目(因为我们已经提前建好两个项目,并且是在同一台机器上,不然使用创建分发项目也是可以的)
分发操作都是字面意思 选择一个合适的即可
分发节点分别选择刚才创建的两个项目即可
间隔时间 可以根据自己项目启动耗时来做调整
在线构建配置
1.在这之前需要先配置一下Git仓库信息
2.还有很重要的Docker配置
如果Docker列表看不到已有Dokcer, 那就需要到资产管理配置好之后 需要分配到对应的工作空间才能在这里使用 需要注意下此处标签
3.配置在线构建
新建一个构建,源仓库找到上一步配置的仓库并选中.选择合适的分支 和Tag
DSL配置
可以参考系统自带的配置实例
下面是我配置好的
# 基础镜像 目前仅支持 ubuntu-latest
runsOn: ubuntu-latest
# 使用哪个 docker 构建,填写 docker 标签 默认查询可用的第一个,如果 tag 查询出多个也选择第一个结果
fromTag: local
# version 需要在对应镜像源中存在
# java 镜像源 https://mirrors.tuna.tsinghua.edu.cn/Adoptium/
# maven 镜像源 https://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/
# node 镜像源 https://registry.npmmirror.com/-/binary/node/
steps:
- uses: java
version: 8
- uses: maven
version: 3.8.7
# 将容器中的文件缓存到 docker 卷中
# - uses: cache
# path: /root/.m2
- run: cd ${JPOM_WORKING_DIR} && mvn package -Pprod
# 宿主机目录和容器目录挂载 /host:/container:ro
binds:
- /home/wxy/.m2/:/root/.m2/
fromTag 是上一步配置的 docker 我这里要使用那个docker来构建项目 把它标签写上即可
run 命令后半部分
mvn package -Pprod
我指定了环境prodbinds 目录:左侧是我机器的目录,右侧固定不变
产物目录 以ruoyi-vue 项目目录结构为例 打包出来的jar 默认是在ruoyi-admin/target/ruoyi-admin.jar这里
我项目里面配置把jar改名了所以我这配置是 ruoyi-admin/target/driver-app-api.jar,也就是仓库根目录的相对路径
选择节点分发 找到上面配置的分发即可!
保存构建
如果配置过程中遇到问题欢迎在评论区沟通交流!
评论区