发布于 

使用wildfly部署Drools workbench 即 business central

由于环境的限制,不能再使用docker部署drools workbench。因此,这几天研究了一下如何离线部署,并记录此文。

由于drools workbench(现命名为business central)在某版本之后,不再支持tomcat容器,因此,参考了docker hub上的docker file配置,使用了wildfly来部署。具体安装步骤如下。

安装JDK

注意一定要是jdk8

jdk8 下载地址: https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html

安装步骤

1
2
3
4
5
6
7
8
9
10
11
12
mkdir /usr/java
mv /tmp/jdk-8u261-linux-x64.tar.gz /usr/java/
cd /usr/java
tar -zxvf jdk-8u261-linux-x64.tar.gz
#配置环境变量
vi /etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_261
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib

source /etc/profile

验证

1
2
java -version
javac

安装wildfly

也是参考了dockerfile文件,我们选用了wildfly 14.0.1.Final版本

wildfly 14 下载地址:https://www.wildfly.org/downloads/

安装步骤

1
2
mv /tmp/wildfly-14.0.1.Final.zip /home/wildfly/
unzip wildfly-14.0.1.Final.zip

目录结构如下

1
2
3
4
5
6
7
8
9
10
11
-rw-rw-r-- 1 root root  26530 Sep  5  2018 LICENSE.txt
-rw-rw-r-- 1 root root 2246 Sep 5 2018 README.txt
drwxrwxr-x 3 root root 4096 Sep 5 2018 appclient
drwxrwxr-x 3 root root 4096 Sep 5 2018 bin
-rw-rw-r-- 1 root root 2451 Sep 5 2018 copyright.txt
drwxrwxr-x 6 root root 4096 Sep 5 2018 docs
drwxrwxr-x 4 root root 4096 Sep 5 2018 domain
-rw-rw-r-- 1 root root 479889 Sep 5 2018 jboss-modules.jar
drwxrwxr-x 3 root root 4096 Sep 5 2018 modules
drwxrwxr-x 6 root root 4096 Sep 5 2018 standalone
drwxrwxr-x 2 root root 4096 Sep 5 2018 welcome-content

启动进程

1
2
cd /home/wildfly/wildfly-14.0.1.Final/bin
sh standalone.sh &

访问http://ip:port:8080 无异常即可

添加用户

1
sh add-user.sh

关停服务

1
jboss-cli.sh --connect --command=:shutdown

部署businessCentral

下载地址:https://download.jboss.org/drools/release/
根据dockerhub上的参考,我选择了7.17.0.Final版本

1
2
3
4
5
#解压
unzip business-central-7.17.0.Final-wildfly14.war -d /home/wildfly/wildfly-14.0.1.Final/standalone/deployments/business-central.war
#创建deployed文件
touch /home/wildfly/wildfly-14.0.1.Final/standalone/deployments/business-central.war.dodeploy
# 然后启动wildfly

启动过程中,发现报内存溢出错误,发现是jvm分配的最大内存只有512M,不够使用。因此,去修改内存大小:

1
2
3
vim /home/wildfly/wildfly-14.0.1.Final/bin/standalone.conf
#修改下面的-Xmx
JAVA_OPTS="-Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true"

另外,参考docker hub上的说明,我们需要增加businessCentral的应用用户和角色:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
cd /home/wildfly/wildfly-14.0.1.Final/standalone/configuration
vim application-roles.properties
#增加如下配置
admin=admin
analyst=analyst
developer=developer
manager=manager
user=user

vim application-users.properties
#增加如下配置
#admin=admin
admin=207b6e0cc556d7084b5e2db7d822555c
#analyst=analyst
analyst=047ca331957b5ce5021e8e01d3322a13
#developer=developer
developer=97df44a197a58de9674af3cd139df47e
#manager=manager
manager=e5148a68341fbc5afbe08fb4ab6da2c5
#user=user
user=c5568adea472163dfc00c19c6348a665

#最好先备份
vim standalone-full.xml
#将management下ApplicationRealm配置修改为如下所示
<security-realm name="ApplicationRealm">
<authentication>
<local default-user="$local" allowed-users="*" skip-group-loading="true"/>
<properties path="drools-users.properties" relative-to="jboss.server.config.dir"/>
</authentication>
<authorization>
<properties path="drools-roles.properties" relative-to="jboss.server.config.dir"/>
</authorization>
</security-realm>

修改并保存这些配置。然后,我们回到bin目录,执行启动命令,观察日志是否有异常。若一切顺利,我们可以打开浏览器了。

访问url:http://localhost:8080/business-central

输入用户名密码,能够成功访问!Congratulations!

Done!