本篇主要介绍Camunda7的安装,主要包括Camunda7运行的必要环境/软件、Camunda7安装/集成。
运行环境
Java环境支持:支持Java8/11/17
数据库支持:
- MySQL 8.0
- MariaDB 10.6
- Oracle 19c
- IBM DB2 11.5 (excluding IBM z/OS for all versions)
- PostgreSQL 13 / 14 / 15 / 16
- Amazon Aurora PostgreSQL compatible with PostgreSQL 13 / 14
- Microsoft SQL Server 2017 / 2019 (see Configuration Note)
- Microsoft Azure SQL with Camunda-supported SQL Server compatibility levels (see Configuration Note):
- SQL Server on Azure Virtual Machines
- Azure SQL Managed Instance
- Azure SQL Database
- H2 2.1 (not recommended for Cluster Mode - see Deployment Note)
- CockroachDB v20.1.3 (see Configuration guide for more details)
第三方依赖库,详见官网:https://docs.camunda.org/manual/7.19/introduction/third-party-libraries/camunda-bpm-platform-license-book/
环境安装
Camunda Platform 和 Camunda Modeler是必要的文件。Camunda Platform:这里是流程引擎的用户、租户等部分的管理界面Camunda Modeler:流程引擎的核心,即流程相关的部分
Camunda的环境安装根据使用方式的不同有很多种,在此介绍二次开发中常用的一种。
Java环境安装
根据具体使用的Camunda7.x版本,安装对应的Java运行环境并配置环境变量即可。需要注意的是Camunda7.19之后的版本,官方说法就不再建议使用JDK8了。
Camunda7.x相关的依赖环境/软件版本,可参见官网,选择对应的Camunda版本后即可查看环境/依赖软件版本。
数据库安装
Camunda7支持多种数据库版本,下面只是给出一部分示例,具体也可参见官网,选择自己需求的数据库类型和版本。
- MySQL 8.0
- MariaDB 10.6
- Oracle 19c
- IBM DB2 11.5
- PostgreSQL 13 / 14 / 15 / 16
- Amazon Aurora PostgreSQL compatible with PostgreSQL 13 / 14 / 15
- Microsoft SQL Server 2017 / 2019
- Microsoft Azure SQL with Camunda-supported SQL Server compatibility levels:
- SQL Server on Azure Virtual Machines
- Azure SQL Managed Instance
- Azure SQL Database
- H2 2.1
在此,使用的是MySQL社区版,本着不想在本机瞎搞的原则,基于Docker进行了MySQL安装与配置,同时安利Vagrant,一个让你能变懒的工具,真的舒爽~,关于Vagrant在另一个k8s专题里有相关介绍,感兴趣的可以尝试了解一下
关于MySQL的安装有很多大佬已经讲的非常详细了,不再赘述,也可以直接参照官网指南安装。
Camunda+SpringBoot项目工程
我们用SpringBoot集成流程引擎,可以参考Camunda-Spring Boot集成案例:
- Get started with Camunda and the Spring Boot
- Get started with Camunda and the Spring Framework
- (推荐)便捷地工程创建方式,可以通过页面点选的方式进行自定义配置,然后可下载完成项目工程代码包,详细地址
修改SpringBoot项目配置使用自定义数据源
前置条件:数据库安装且配置完备;Camunda+Spring工程可正常启动。
修改application.yaml,添加自定义数据源
spring:
datasource:
url: jdbc:mysql://192.168.23.145:3306/myproject?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=true
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: root
Camunda Engine Properties
除了自定义数据源配置,Camunda还有很多其他可选的配置项,可参考Camunda Engine Properties,这里暂时不展开介绍,后续用到的地方会进行分享。