java项目 配置流水线自动发布

@Tomato

1、介绍

提交合并代码,则自动发布项目


2、配置流水线

2.1、登录

阿里云流水线


2.2、新建一个项目

在这里插入图片描述


2.3、新建一个应用

绑定项目,项目对应多个应用(新建应用较慢)

在这里插入图片描述


2.4、新建一个流水线

选择一个流水线,直接复制

在这里插入图片描述


2.4、设置流水线

为流水线绑定项目和应用

在这里插入图片描述


2.4、设置输入源

设置代码仓库(eg:ssh://git@git…)、分支、名称

在这里插入图片描述

打开git项目,如果已有Deploy Keys,则启用,并开启已允许写入权限

在这里插入图片描述


2.5、设置流水线阶段

cd ServiceSite
mvn clean package -s settings.xml docker:build
推送阿里远程仓库

在这里插入图片描述

在这里插入图片描述

绑定应用和环境

在这里插入图片描述

确认项目是否有deploy分支

在这里插入图片描述


3、配置Portainer

3.1、登录

Portainer


3.2、新建Stacks

在这里插入图片描述


4、配置Jenkins

3.1、登录

Jenkins
使用介绍
1、持续的软件版本发布/测试项目。
2、监控外部调用执行的工作。

3.2、新建任务

可以勾选从已有项目复制

在这里插入图片描述

3.3、编辑任务

配置代码仓库,触发器、构建。。。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述


3.4、检查任务状态

因为之前设置的触发器是SCM(版本管理工具)
当代码仓库发生改动,会自动构建Eexcute shell命令,eg:

eval "docker pull xxx.com/seaskysh/${IMAGENAME}:${IMAGETAG}"
eval "docker service update --image xxx.com/xxxsh/${IMAGENAME}:${IMAGETAG} --force ${SERVICE}"
docker system prune -a -f
exit 0

可以看到构建时间状态

在这里插入图片描述


5、发布前端

5.1、登录

nginxWebUI


5.2、新建静态网页打包上传

1.修改前端项目.pro地址
2.打包
3.上传包至nginx

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


5.3、配置反向代理

配置反向代理,监控路径为接口地址别名

在这里插入图片描述


5.4、更新config

点击生成文件,再点击替换文件

在这里插入图片描述


5.5、常见错误

5.5.1、 页面404

1、检查压缩包结构是不是多包了一层
在这里插入图片描述

2、检查反向代理是不是监控路径为接口地址别名(不加web)在这里插入图片描述

5.5.2、 页面空白

1、文件已加载,但是页面空白不报错,检查前端router
在这里插入图片描述

5.5.2、 只有主页面能访问,子页面404

配置子页面的反向代理

在这里插入图片描述


版权声明:本文为qq_34246850原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。