fork jboss/jbpm-workbench with jbpm6.5 wildfly10 and java8
1.1K
JBoss jBPM Workbench Docker image.
The image contains:
This image it is a fork from jboss/jbpm-workbench with a few changes: using Wildfly 10, java 8
This image provides the jBPM Workbench. It's intended to be extended so you can add your custom configurations.
If you don't want to extend this image and you just want to try jBPM Workbench take a look at the exoldy/jbpm-workbench-showcase:latest Docker image, it contains some default configurations.
To run a container:
docker run -p 8080:8080 -p 8001:8001 -p 9990:9990 -d --name jbpm-workbench exoldy/jbpm-workbench:latest
Once container and web applications started, you can navigate into the jBPM Workbench at:
http://localhost:8080/jbpm-console
The application have no users or roles configured, so you cannot not access it by default,
In order to use it, at least you have to create an application user in JBoss Wildfly with role admin.
If you are looking for a jBPM Workbench image that does not require to add custom configurations, try our exoldy/jbpm-workbench-showcase:latest Docker image.
If you want to create your custom configuration and users, role, etc, you can take a look at section Extending this image
You can see all logs generated by the standalone binary running:
docker logs [-f] <container_id>
You can attach the container by running:
docker attach <container_id>
The jBPM Workbench web application logs can be found inside the container at path:
/opt/jboss/wildfly/standalone/log/server.log
Example:
sudo nsenter -t $(docker inspect --format '{{ .State.Pid }}' $(docker ps -lq)) -m -u -i -n -p -w
-bash-4.2# tail -f /opt/jboss/wildfly/standalone/log/server.log
The workbench stores all the project artifacts in an internal GIT repository. By default, the protocol available for accessing the GIT repository is SSH at port 8001.
You can clone the GIT repository by running:
git clone ssh://admin@localhost:8001/system
By default, the GIT repository is created when the application starts for first time at $WORKING_DIR/.niogit, considering $WORKING_DIR as the current directory where the application server is started.
You can specify a custom repository location by setting the following Java system property to your target file system directory:
-Dorg.uberfire.nio.git.dir=/home/youruser/some/path
NOTE: This directory can be shared with your docker host and with another containers using shared volumes when running the container, if you need so.
If necessary you can make GIT repositories available from outside localhost using the following Java system property:
-org.uberfire.nio.git.ssh.host=0.0.0.0
You can set this Java system properties permanent by adding the following lines in your standalone-full.xml file as:
<system-properties>
<!-- Custom repository location. -->
<property name="org.uberfire.nio.git.dir" value="/home/youruser/some/path"/>
<!-- Make GIT repositories available from outside localhost. -->
<property name="org.uberfire.nio.git.ssh.host" value="0.0.0.0"/>
</system-properties>
NOTE: Users and password for ssh access are the same that for the web application users defined at the realm files.
You can extend this image and add your custom layers in order to add custom configurations, users, roles, etc.
In order to extend this image, your Dockerfile must inherit from:
FROM jboss/jbpm-workbench:latest
Configuring Wildfly
/opt/jboss/wildfly/standalone/configurationfull profile, so custom modifications should be done in standalone-full.xml configuration fileUsers and roles
By default this image does not provide users and roles for jBPM Workbench
The available roles for jBPM Workbench examples are:
ROLE DESCRIPTION
*************************************************
admin The administrator
analyst The analyst
developer The developer
manager The manager
user The end user
kiemgmt KIE management user
Accounting Accounting role
PM Project manager role
HR Human resources role
sales Sales role
IT IT role
These are the steps to create your custom users and roles by using realm files in Widlfly:
1.- Create a realm properties file for users and deploy it in /opt/jboss/wildfly/standalone/configuration:
jbpm-users.properties
---------------------
admin=admin
analyst=analyst
developer=developer
manager=manager
user=user
2.- Create a realm properties file for roles and deploy it in /opt/jboss/wildfly/standalone/configuration:
jbpm-roles.properties
---------------------
admin=admin
analyst=analyst
developer=developer
manager=manager
user=user
3.- Modify your standalone-full.xml in order to:
3.1 - In the management section, modify default the security-realm for the ApplicationRealm as:
<security-realm name="ApplicationRealm">
<authentication>
<local default-user="$local" allowed-users="*" skip-group-loading="true"/>
<properties path="jbpm-users.properties" relative-to="jboss.server.config.dir"/>
</authentication>
<authorization>
<properties path="jbpm-roles.properties" relative-to="jboss.server.config.dir"/>
</authorization>
</security-realm>
3.2 - In the security subsystem, modify default the other security-domain for as:
<security-domain name="other" cache-type="default">
<authentication>
<login-module code="UsersRoles" flag="required">
<module-option name="usersProperties" value="${jboss.server.config.dir}/jbpm-users.properties"/>
<module-option name="rolesProperties" value="${jboss.server.config.dir}/jbpm-roles.properties"/>
</login-module>
</authentication>
</security-domain>
You can find an example by looking at the Dockerfile for jboss/jbpm-workbench-showcase:latest image.
To spin up a shell in one of the containers try:
docker run -t -i -p 8080:8080 -p 8001:8001 exoldy/jbpm-workbench:latest /bin/bash
You can then noodle around the container and run stuff & look at files etc.
jbpm-console and the context path for jBPM Dashbuilder web application is dashbuilder6.4.0.Finalfull server profile6.5.0.Final
10.1.0.Finallatest = (6.5.0.Final)KIE_DEMO environment variable to disable examples and demos if host do not have internet connectionorg.guvnor:guvnor-asset-mgmt-project:6.5.0.Final:jar into the M2 repository. See BZ-1263738Content type
Image
Digest
Size
428.7 MB
Last updated
almost 10 years ago
docker pull exoldy/jbpm-workbench