Activiti的Web在线工作流设计器的几种搭建方式

news2024/9/27 11:25:37

说明

Activiti

Activiti是一个使用Java开发的工作流流程管理(BPM)平台,可以帮助开发者和企业自动化管理业务流程。它提供了一整套工具,用于定义、执行、监控和优化业务流程。Activiti支持BPMN 2.0标准,具有强大的扩展能力和易用性,适用于各种规模的组织和复杂的业务需求。

Activiti的核心功能包括:

工作流管理:通过图形化界面设计和建模业务流程,自动化处理业务流程。
任务分配:支持手动和自动任务分配,任务可以分配给特定用户或用户组。
事件处理:处理流程中的各种事件,如开始事件、结束事件、定时事件等。
流程监控:实时监控流程执行情况,提供关键指标和报告,帮助用户了解流程性能和瓶颈。
集成能力:提供丰富的API,支持与外部系统的集成,如ERP、CRM和邮件服务等。

在这里插入图片描述

BPMN

BPMN(BPMN,Business Process Model and Notation)设计器是用于创建、编辑和可视化工作流程模型的工具。
BPMN是一种国际标准,用于图形化地描述工作流程,它结合了活动、事件、网关等元素,为业务分析师、IT人员和其他利益相关者提供了一个共同的沟通平台。
BPMN设计器通过提供直观的图形化界面,使得用户无需编程知识也能轻松构建复杂的BPMN工作流程图。
在这里插入图片描述

BPMN设计器的主要功能和特点包括:
图形化建模:可以通过拖拽和连接不同的BPMN元素(如任务、事件、网关等)来构建流程图,实现工作流程的可视化建模。
属性设置:可以为流程图中的每个元素设置详细的属性,如名称、描述、执行者等,以满足特定的业务需求。
高级功能:除了基本的建模功能外,BPMN设计器还可能提供高级功能,如版本控制、模拟运行、自动化测试等,以支持更复杂的工作流程管理需求。
集成能力:BPMN设计器通常支持与其他系统(如BPM工作流引擎、项目管理工具等)的集成,使得工作流程图能够在实际应用中发挥作用。
导出和共享:可以将BPMN流程图导出为图片、PDF、XML等格式,与团队成员共享。
易用性和灵活性:BPMN设计器通常具有友好的用户界面和灵活的操作方式,使得用户能够快速上手并高效地完成流程建模工作。

方式一、docker运行bpmn-studio

该项目包括一个 Dockerfile,用于启动一个具有 Web 界面和 API 的功能齐全的 BPMN 工作室。使用来自 bpmn-studio 和 process-engine 的 NPM 包并安装所有依赖项。

拉取镜像

docker pull 5minds/bpmn-studio-bundle:6.7.7

在这里插入图片描述

在这里插入图片描述

运行容器

docker run -d -p 8000:8000 -p 9000:9000 \
--name bpmn-studio \
 5minds/bpmn-studio-bundle:6.7.7

在这里插入图片描述

发现需要外接流程引擎。

方式二、bpmn-js-modeler

https://hub.docker.com/r/riainsure/bpmn-js-modeler

拉去容器

docker pull riainsure/bpmn-js-modeler

在这里插入图片描述

运行容器

# docker run -p 8080:8080  riainsure/bpmn-js-modeler
 

在这里插入图片描述

浏览器访问

只能使用8080,如果使用了其他的端口 无法显示显示详细。
在这里插入图片描述

bpmn-js

https://github.com/bpmn-io/bpmn-js

下载代码
https://bpmn.io/toolkit/bpmn-js/download/

git clone https://github.com/bpmn-io/bpmn-js.git -b v9.0.2 .

在这里插入图片描述

安装所有依赖

npm  install

运行程序

npm run dev

方式三、bpmn-vue-activiti

https://github.com/Yiuman/bpmn-vue-activiti
或者我fork出来的版本
https://github.com/dowhere/bpmn-vue-activiti.git

下载代码

git clone https://github.com/Yiuman/bpmn-vue-activiti.git

在这里插入图片描述

安装依赖

npm  install

在这里插入图片描述

运行程序

npm run dev

在这里插入图片描述

打开浏览器

在这里插入图片描述

构建项目

npm run build

构建docker镜像

docker build -t bpmn-activiti .

在这里插入图片描述

运行容器

在这里插入图片描述

使用 Dockerfile 编译运行

首先对对代码进行 build 构建编译,然后使用 nginx 运行设计器。
在/home 目录下创建一个目录 bpmn-js 目录,然后把 build 后的文件放到dist 目录中,然后准备一个 nginx.conf 配置文件和 Dockerfile 文件。

目录结构

显示 bpmn-js 目录下的 3 级目录

$ tree -C -L 3 bpmn-js

在这里插入图片描述

[root@groupserver home]# tree -C -L 3 bpmn-js
bpmn-js
├── dist
│?? ├── assets
│?? │?? ├── bpmn.0dbc20b6.woff2
│?? │?? ├── bpmn.833c0745.woff
│?? │?? ├── bpmn.a63cfe0a.eot
│?? │?? ├── bpmn.d4d2c3b1.ttf
│?? │?? ├── bpmn.f5c5c965.svg
│?? │?? ├── common.0a5fb9a4.js
│?? │?? ├── common.50bc4801.css
│?? │?? ├── element-icons.9c88a535.woff
│?? │?? ├── element-icons.de5eb258.ttf
│?? │?? ├── Event.30365e16.js
│?? │?? ├── Flow.e861223d.js
│?? │?? ├── Gateway.c2161324.js
│?? │?? ├── index.6a8ea8db.js
│?? │?? ├── index.b660e7dc.css
│?? │?? ├── Other.d6c49e35.js
│?? │?? ├── PrefixLabelSelect.9c3c88a9.js
│?? │?? ├── PrefixLabelSelect.e0a9450b.css
│?? │?? ├── Process.980742f7.js
│?? │?? ├── Task.cef59624.js
│?? │?? └── vendor.5b5c1ac1.js
│?? ├── favicon.ico
│?? └── index.html
├── Dockerfile
└── nginx.conf

2 directories, 24 files
[root@groupserver home]#

nginx.conf 文件

nginx 配置文件

#user  nobody;
  worker_processes  1;
  events {
      worker_connections  1024;
  }
  http {
      include       mime.types;
      default_type  application/octet-stream;
      sendfile        on;
      #tcp_nopush     on;
      #keepalive_timeout  0;
      keepalive_timeout  65;
      #gzip  on;
      gzip on;

      server {
          listen  80;
          #前端
          location / {
              index index.html index.htm;   #添加属性。
              root /usr/share/nginx/html;   #站点目录
          }
          error_page   500 502 503 504  /50x.html;
          location = /50x.html {
              root   /usr/share/nginx/html;
          }
      }
  }

在这里插入图片描述

Dockerfile文件

FROM nginx
LABEL author="taxsoft"

COPY dist/ /usr/share/nginx/html/
COPY nginx.conf /etc/nginx/nginx.conf

EXPOSE 80

CMD ["nginx", "-g", "daemon off;"]

#1.build
#docker build -t bpmn-activiti .
#2.run
#docker run --name bpmn-activiti -p 18080:80 -d --rm  bpmn-activiti

在这里插入图片描述

运行截图

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2169828.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Git GUI操作流程

1,点击运行 Gt GUI 2,界面如下 3,点击Creat new Repository或者在菜单栏点击Repository--new 4,点击Browse选择目录,点击create,创建本地git仓库 5,对应盘里生成一个.git文件,用于版本管理 6&am…

2024最新测评:低代码平台在企业复杂应用场景的适用性如何?

低代码平台种类多,不好一概而论。但最近有做部分低代码平台的测评,供大家参考。 一个月前接到老板紧急任务:调研有没有一款低代码平台能开发我司的软件场景。我司是一家快速发展中的制造业企业,业务遍布全国,需要一个…

DAY81服务攻防-开发框架安全SpringBootStruts2LaravelThinkPHPCVE 复现

知识点: 1、PHP-框架安全-Thinkphp&Laravel 2、J2EE-框架安全-SpringBoot&Struts2 常见语言开发框架: PHP:Thinkphp Laravel YII CodeIgniter CakePHP Zend等 JAVA:Spring MyBatis Hibernate Struts2 Springboot等 P…

Elasticsearch讲解

1.Elasticsearch基本知识 1.基本认识和安装 Elasticsearch是由elastic公司开发的一套搜索引擎技术,它是elastic技术栈中的一部分。完整的技术栈包括: Elasticsearch:用于数据存储、计算和搜索 Logstash/Beats:用于数据收集 Kib…

Dos.ORM简单说明

1 下载Dos.Tools-master 地址:Dos.Tool: 实体生成工具,成熟轻量级ORM、上手简单、性能高、功能强大! 2 Dos.ORM仅支持DbFirst模式,即必须先有数据库,这里以Sql Server为例 3 新建项目,添加引用Dos.ORM.dll&…

3.javaweb-Servlet与过滤器

javaweb-Servlet与过滤器 文章目录 javaweb-Servlet与过滤器一、Servlet:server applet二、Servlet做了什么?三、Servlet是什么?四、jsp与Servlet关系五、Servlet API1.主要Servlet API介绍2.如何创建Servlet3.Servlet中主要方法4.ServletReq…

使用Docker快速本地部署RSSHub结合内网穿透访问RSS订阅源

文章目录 前言1. Docker 安装2. Docker 部署Rsshub3. 本地访问Rsshub4. Linux安装Cpolar5. 配置公网地址6. 远程访问Rsshub7. 固定Cpolar公网地址8. 固定地址访问 前言 今天和大家分享的是如何在本地快速简单部署Rsshub工具,并结合cpolar内网穿透工具使用公网地址远…

ArcGIS Desktop使用入门(三)常用工具条——拓扑(下篇:地理数据库拓扑)

系列文章目录 ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二&#x…

mobaxterm、vscode通过跳板机连接服务器

目标服务器:111.111.11.11 跳板机:100.100.10.10 1. mobaxterm通过跳板机连接服务器 1.1 目标服务器信息 1.2 跳板机信息 1.3 登录 点击登录,会输入密码,成功 参考:https://blog.csdn.net/qq_40636486/article/det…

Linux 运维 | 6.从零开始,Shell编程中正则表达式 RegExp 速成指南

[ 知识是人生的灯塔,只有不断学习,才能照亮前行的道路 ] 0x00 前言概述 在 Linux 运维以及Shell脚本编程中往往会使用到各种文本处理工具(例如,文本三剑客 awk、grep、sed)以及Shell脚本编程(后续作者会在#…

【C语言从不挂科到高绩点】23-指针05-结构体指针【重点知识】

Hello!彦祖们,俺又回来了!!!,继续给大家分享 《C语言从不挂科到高绩点》课程!! 本节将为大家讲解C语言中非常重要的知识点-指针: 本套课程将会从0基础讲解C语言核心技术,适合人群: 大学中开设了C语言课程的同学想要专升本或者考研的同学想要考计算机等级证书的同学想…

CSS在线格式化、美化、压缩工具

网上有不少CSS格式化压缩的工具,但是不少站点有广告干扰,或操作起来不方便,或打开速度比较慢,所以自己定制了这个css格式化压缩的工具,也希望对大家有帮助,提供的这个CSS代码格式化和css在线压缩工具&#…

银发产业新闻 | 饿了么、一龄集团、达因药业、爱奇艺有哪些布局

一周银发产业大事件速览 9月27日 星期五 1 养老服务 国家医保局发布长护险编码规则民政部召开全国养老服务工作推进会议市场监管总局发布《适老家具通用技术要求》中央财政安排3亿元引导资金支持“老年食堂”发展全国老龄委印发《关于深入开展新时代“银龄行动”的指导意见…

行业标准如何立项?具体的步骤有哪些

一、前期准备 1. 明确需求: • 确定所在行业存在哪些问题或不足,需要通过制定行业标准来规范和解决。 • 分析行业发展趋势和市场需求,确保立项的标准具有前瞻性和实用性。 收集资料: 查阅国内外相关行业标准和法律法规&#xff0…

数字单总线输出的工业级温湿度一体传感器-MHT04

温湿度传感芯片 - MHT04,该芯片是数字单总线输出的工业级温湿度一体传感器,采用防尘防水透气的铂金叠层湿敏探头结合高精度电容调理芯片MDC04架构,数字单总线输出,可长距离串联多个节点,适用于仓储、冷链、畜牧、工农业…

SQL 性能调优

什么是 SQL 性能调优 SQL 性能调优是优化 SQL 查询以尽可能高效地运行的过程,从而减少数据库负载并提高整体系统性能。这是通过各种技术实现的,例如分析查询执行计划、优化索引和重写查询以确保最佳执行路径。目标是最大限度地减少执行查询所需的时间和…

写一个算法统计在输入字符串中各个不同字符出现的频度并将结果存入文件(字符串中的合法字符为A-Z这26个字母和0-9这十个数字)

题目分析,一共需要最多需要36个位置的数组,我们把前十个数组位置给0-9个数字字符存放空间,10-36的数组空间给到A-Z的存放 int main() {printf("请输入一串字符串内容,并且以#结束输入\n");char arr[36], ch;//26个大写字符10个数字…

力扣 中等 24.两两交换链表中的节点

文章目录 题目介绍题解 题目介绍 题解 利用25题K个一组反转链表链接 ,将k改为2即可。 // 同 25题 K个一组反转链表 class Solution {public ListNode swapPairs(ListNode head) {// 统计节点个数int n 0;for (ListNode cur head; cur ! null; cur cur.next) {n…

【工具分享】Magniber勒索病毒解密工具

前言 Magniber勒索软件首次出现在2017年,最初主要针对韩国的用户。它是通过使用Magniber Exploit Kit (EK)传播的,这款勒索软件迅速成为网络威胁的一部分。尽管最初集中于亚洲地区,Magniber在2021年卷土重来,并开始扩展到全球范围…

扩展 SaaS 业务:2024 年取得成功的基本策略

在不断发展的数字世界中,软件即服务(SaaS)已成为关键要素,在不同领域提供了无与伦比的实用性和易用性。然而,在这个蓬勃发展的领域取得成功不仅仅需要创新的产品。仅仅具有可行性是不够的。要真正蓬勃发展,…