jBPM Workbench Showcase Docker image
1M+
From version 7.61.0.Final we changed the location for our docker images from Docker to RedHat Quay
The 7.61.0.Final version will have the images at both locations (Docker and Quay).
From the versions > 7.61.0.Final on the images will only be available on Quay.
The image contains:
This is a ready to run Docker image for jBPM Workbench. Just run it and try the jBPM Workbench!
To run a container:
docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full jboss/jbpm-server-full:latest
Once container and web applications started, you can navigate to it using one of the users described in section Users and roles, using the following URL:
http://localhost:8080/business-central
This showcase image contains default users and roles:
USER PASSWORD ROLE
*************************************************
wbadmin wbadmin admin,analyst,user,process-admin,kie-server
krisv krisv admin,analyst,user,process-admin,kie-server
john john analyst,Accounting,PM,kie-server
sales-rep sales-rep analyst,sales,kie-server
katy katy analyst,HR,kie-server
jack jack analyst,IT,kie-server
This image supports using H2, MySQL, PostgreSQL as the database. By default with H2 database with file storage - located under <JBOSS_HOME>/standalone/data/jbpm-db. The container configuration allows you to switch to either MySQL or PostgreSQL database via a set of environment variables. Alternatively, you can use the provided Docker compose examples to get started using an alternative database.
docker-compose -f docker-compose-examples/jbpm-full-mysql.yml up
docker-compose -f docker-compose-examples/jbpm-full-postgres.yml up
JBPM_DB_DRIVER = Specify which database driver to use. Allows either: 'h2', 'mysql' or 'postgres'. Default: 'h2'.JBPM_DB_HOST = Specify hostname of the database. Default: 'localhost'JBPM_DB_PORT = Specify port of the database. Default: '3306' if using 'mysql' driver or '5432' in case of 'postgres'.JBPM_DB_NAME = Specify name of the database to use. Default: 'jbpm'JBPM_DB_USER = Specify user to use to authenticate to the database. Default: 'jbpm'JBPM_DB_PASSWORD = Specify user's password to use to authenticate to the database. Default: 'jbpm'docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full -e JBPM_DB_DRIVER=mysql -e JBPM_DB_HOST=172.17.0.1 jboss/jbpm-server-full:latest
docker run -p 8080:8080 -p 8001:8001 -d --name jbpm-server-full -e JBPM_DB_DRIVER=postgres -e JBPM_DB_HOST=172.17.0.1 jboss/jbpm-server-full:latest
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 and Kie Server web applications 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.
As an example, if you import the IT_Orders sample project, you can clone it by running:
git clone ssh://wbadmin@localhost:8001/MySpace/IT_Orders
NOTE: Users and password for ssh access are the same that for the web application users defined at the realm files.
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.
As Docker defaults, once a container has been removed, the data within that container is removed as well. That includes any assets you created and projects that you deployed to the Kie Server using the local Maven repository.
In the case you need to create a persistent environment you can use an approach based on Docker Volumes. Here are two ways of doing it.
Using default GIT root directory
By default, the internal GIT root directory for the workbench container is located at /opt/jboss/wildfly/bin/.niogit, so you can make this directory persistent in your docker host by running the container using a docker shared volume as:
# Use -v <SOURCE_FS_PATH>:<CONTAINER_FS_PATH>
docker run -p 8080:8080 -p 8001:8001 -v /home/myuser/wb_git:/opt/jboss/wildfly/bin/.niogit:Z -d --name jbpm-server-full jboss/jbpm-server-full:latest
Please create /home/myuser/wb_git before running the docker container and ensure you have set the right permissions.
As the above command, now your workbench git repository will be persistent at your host filesystem's path /home/myuser/wb_git. So if you remove this container and start a new one just by using same shared volume, you'll find all your assets on the new workbench's container as well.
In order to keep the git repositories between different containers you can just start the container by configuring a new host volume as:
# Use -v <SOURCE_FS_PATH>:<CONTAINER_FS_PATH>
docker run -p 8080:8080 -p 8001:8001 -v /home/myuser/wb_git:/opt/jboss/wildfly/.niogit:Z -d --name jbpm-workbench jboss/jbpm-workbench-showcase:MY_TAG
As the above command, now your workbench git repository will be persistent at your local filesystem path /home/myuser/wb_git. So if you remove this container and start a new one just by using same shared volume, you'll find all your assets on the new workbench's container as well.
KIE_SERVER_ID = Specify the identifier to be used by the Kie Server configuration. Default: 'sample-server'KIE_SERVER_LOCATION = Specify the public url for the Kie Server. Default: 'http://localhost:8080/kie-server/services/rest/server'To spin up a shell in one of the containers try:
docker run -t -i -p 8080:8080 -p 8001:8001 jboss/jbpm-server-full:latest /bin/bash
You can then noodle around the container and run stuff & look at files etc.
If the application can't be accessed via browser (http://localhost:8080/business-central) please run the container in host network mode. It seems that latest docker versions have some restrictions on the networking side. Using an older daemon version this does not happen. Try:
docker run ... --network="host" ...
7.61.0.Finalbusiness-central7.61.0.Finalkie-server7.61.0.Finaljbpm-casemgmt7.61.0.Final
Content type
Image
Digest
Size
971.8 MB
Last updated
almost 5 years ago
docker pull jboss/jbpm-server-full