0
点赞
收藏
分享

微信扫一扫

SprinBoot 集成 Flowable 工作流引擎镜像制作

干自闭 2022-09-12 阅读 105


文章目录

  • ​​一、实现原理​​
  • ​​1. 镜像制作个数​​
  • ​​2. 调用流程​​
  • ​​3. 调用流程分析​​
  • ​​二、前期准备​​
  • ​​2.1. 克隆项目到本地​​
  • ​​2.2. 修改数据库连接和容器别名​​
  • ​​2.3. 修改请求地址为容器别名(后端)​​
  • ​​三、 修改请求地址为容器别名(前端)​​
  • ​​3.1. 环境配置​​
  • ​​3.2. 安装依赖​​
  • ​​3.3. 打包编译​​
  • ​​四、制作镜像准备​​
  • ​​4.1. 项目打包​​
  • ​​4.2. 包上传​​
  • ​​4.3. 制作Dockerfile​​
  • ​​4.4. 制作后台镜像​​
  • ​​4.5. 制作前台门户镜像​​
  • ​​4.6. 拉取mysql镜像​​
  • ​​4.7. 查看镜像​​
  • ​​五、创建容器并启动​​
  • ​​5.1. 创建并运行mysql容器​​
  • ​​5.2. 创建并运行后台容器​​
  • ​​5.3. 创建并运行前台门户容器​​
  • ​​5.4. 查看启动日志​​
  • ​​5.5. 查看运行中的容器​​
  • ​​六、服务验证​​
  • ​​6.1. 后台服务验证​​
  • ​​6.2. 前台门户服务验证​​
一、实现原理
1. 镜像制作个数

组成部分:后台流程引擎、前台门户、mysql数据库

2. 调用流程

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql

3. 调用流程分析

1.首先把前台门户、后台、mysql单独制作成一个镜像
2.让前台门户镜像可以和mysql镜像之间通信
让后台镜像可以和mysql镜像之间通信
让前台门户、后台镜像、mysql镜像三者之间互相通信
3.实现docker容器之间通信的方案
容器之间:添加链接--link参数

案例:
docker run -p 8080:8080 -p 9326:9326 --name eblog --link es_643:ees --link myrabbit:erabbit --link mymysql:emysql --link myredis:eredis -d eblog


解析:
-p 8080:8080 -p 9326:9326 :9326是因为即时聊天需要用到的ws端口
--link es_643:ees 表示关联容器,把容器es_643起别名为ees,
--link的作用就相当于在容器es_643的/etc/hosts中添加了一条容器名与ip的映射关系。以后eblog 容器就可以直接使用容器名与es_643进行通信了。

二、前期准备
2.1. 克隆项目到本地

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_02


SprinBoot 集成 Flowable 工作流引擎镜像制作_jar_03


命令克隆项目

git

2.2. 修改数据库连接和容器别名

将数据库连接调整为接下来容器的数据库地址

将mysql数据库容器别名替换为ip地址

SprinBoot 集成 Flowable 工作流引擎镜像制作_jar_04

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_05

2.3. 修改请求地址为容器别名(后端)

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_06

三、 修改请求地址为容器别名(前端)
3.1. 环境配置

SprinBoot 集成 Flowable 工作流引擎镜像制作_jar_07


SprinBoot 集成 Flowable 工作流引擎镜像制作_docker_08

3.2. 安装依赖

# 在NPM 中安装
npm install -g yarn

# 安装依赖
yarn install

若出现此异常:​​‘yarn‘ 不是内部或外部命令,也不是可运行的程序​​

3.3. 打包编译

cd C:\Users\Administrator.DESKTOP-I5SJ4CK\Desktop\flow\flow-front-ui

# 执行编译打包
vite build &&

四、制作镜像准备
4.1. 项目打包

mvn clean package -Dmaven.test.skip=true

4.2. 包上传

SprinBoot 集成 Flowable 工作流引擎镜像制作_docker_09


SprinBoot 集成 Flowable 工作流引擎镜像制作_docker_10

4.3. 制作Dockerfile

后台

vim Dockerfile

添加内容如下:
# Docker image for springboot file run
# VERSION 1.0.0
# Author: bruce.liu
FROM java:8
EXPOSE 8988
MAINTAINER bruce.liu <463805737@qq.com>
ENV TZ=Asia/Shanghai
RUN ln -sf /usr/share/zoneinfo/{TZ} /etc/localtime && echo '{TZ}' > /etc/timezone
ADD flow-admin.jar /flow-admin.jar
RUN bash -c 'touch /flow-admin.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/flow-admin.jar"]

前台门户

vim Dockerfile

添加内容如下:
# Docker image for springboot file run
# VERSION 1.0.0
# Author: bruce.liu
FROM java:8
EXPOSE 8990
MAINTAINER bruce.liu <463805737@qq.com>
ENV TZ=Asia/Shanghai
RUN ln -sf /usr/share/zoneinfo/{TZ} /etc/localtime && echo '{TZ}' > /etc/timezone
ADD flow-front-rest.jar /flow-front-rest.jar
RUN bash -c 'touch /flow-front-rest.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/flow-front-rest.jar"]

4.4. 制作后台镜像

cd /app/admin/

docker build -t flow-admin:1.0 .

SprinBoot 集成 Flowable 工作流引擎镜像制作_docker_11

4.5. 制作前台门户镜像

cd /app/portal/

docker build -t flow-portal:1.0 .

SprinBoot 集成 Flowable 工作流引擎镜像制作_jar_12

4.6. 拉取mysql镜像

# 拉取mysql5.7.27镜像

4.7. 查看镜像

docker images

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_13

五、创建容器并启动
5.1. 创建并运行mysql容器

docker run --name mymysql -e MYSQL_ROOT_PASSWORD=123456 -d -p 3306:3306  mysql:5.7.27

5.2. 创建并运行后台容器

docker run -p 8988:8988 --name flow-admin --link flowmysql:flowmysql -d flow-admin:1.0

若遇到此异常:
​​​项目启动时flowable报错提示 version mismatch: library version is *, db version is *​​

5.3. 创建并运行前台门户容器

docker run -p 8990:8990 --name flow-portal --link flowmysql:flowmysql --link flow-admin:flow-admin -d flow-portal:1.0

5.4. 查看启动日志

docker logs -f flow-admin
docker logs -f flow-portal

5.5. 查看运行中的容器

docker ps

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_14

六、服务验证
6.1. 后台服务验证

​​http://192.168.60.128:8988/​​

SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_15


SprinBoot 集成 Flowable 工作流引擎镜像制作_docker_16


SprinBoot 集成 Flowable 工作流引擎镜像制作_mysql_17

6.2. 前台门户服务验证

SprinBoot 集成 Flowable 工作流引擎镜像制作_jar_18


SprinBoot 集成 Flowable 工作流引擎镜像制作_docker_19


举报

相关推荐

0 条评论