Installation Guide
The architecture of Open BPMN makes it possible to run the modeller on various IDEs and platforms. It can be installed on different IDEs such as Visual Studio Code or Eclipse Theia or it can be run as a standalone web application.
Install in Visual Studio Code
Visual Studio Code (VS-Code) is a popular, lightweight editor that fully supports the Open-BPMN modeling suite through its extension mechanism.
To install Visual Studio Code, follow these steps:
- Visit the VS-Code Download page and select the version for your OS (Windows, macOS, or Linux).
- Download and run the setup file to install the application on your local machine.
- Follow the installation wizard, which allows you to add VS-Code to your PATH for easy command-line access.
- Launch VS-Code and you are ready to customize your environment.
Installing the Open-BPMN Extension: To add the Open BPMN Extension, navigate to the Extensions view in the activity bar on the side of VS-Code. Search for “Open-BPMN” and click the Install button.
Install Eclipse Theia
Eclipse Theia is a highly flexible and modern IDE experience, featuring a powerful AI integration that significantly enhances the modeling and development workflow.
To install the Theia IDE, follow these steps:
- Download the latest installer for your operating system from the official Eclipse Theia website.
- Run the installer and follow the on-screen instructions.
- Theia is cross-platform and runs on Windows, macOS, and Linux, providing a seamless experience across all environments.
- Once installed, launch the application to start your workspace.
Installing the Open-BPMN Extension: To run Open BPMN Extension in the Theia IDE, simply open the Extensions view from the sidebar (or press Ctrl+Shift+X). Search for “Open-BPMN” in the Open VSX Registry and click Install. After the installation, you can immediately start modeling by opening any .bpmn file.
JDK 17 Support
Note: The Open-BPMN extension is based on JDK 17. Please ensure you have Java 17 or higher installed on your system.
Run With Docker
Open-BPMN can also be run as a Web Application in a Docker Container. This solution includes the Eclipse Theia Platform. To run Open-BPMN with docker just start a local Docker container:
$ docker run -it --rm --name="open-bpmn" \
-p 3000:3000 \
imixs/open-bpmn
After starting the container the application is accessible from your Web Browser:
http://localhost:3000
Workspace Directory
The Theia Client is using a local workspace directory /usr/src/app/open-bpmn.glsp-client/workspace. The workspace directory is the place to create and edit the BPMN files. With Docker you can change the workspace directory and map it to a local directory with the Docker param -v
In the following example the workspace is mapped to the local directory /tmp/my-workspace
$ docker run -it --rm --name="open-bpmn" \
-p 3000:3000 \
-v /tmp/my-workspace:/usr/src/app/open-bpmn.glsp-client/workspace \
imixs/open-bpmn
Kubernetes
You can also run Open-BPMN in a Kubernetes cluster. The following is a deplyoment yaml file that you can use as a template for your own configuration. Note also in Kubernetes you can map the workspace directory to a persistence volume.
---
###################################################
# Deployment office-demo
###################################################
apiVersion: apps/v1
kind: Deployment
metadata:
name: modeler-app
namespace: open-bpmn
labels:
app: modeler-app
spec:
replicas: 1
selector:
matchLabels:
app: modeler-app
strategy:
type: Recreate
template:
metadata:
labels:
app: modeler-app
spec:
containers:
- image: imixs/open-bpmn:latest
name: modeler-app
imagePullPolicy: Always
env:
- name: TZ
value: Europe/Berlin
ports:
- name: web
containerPort: 3000
resources:
requests:
memory: "128M"
limits:
memory: "1G"
restartPolicy: Always
---
###################################################
# Service open-bpmn
###################################################
apiVersion: v1
kind: Service
metadata:
name: modeler-app
namespace: open-bpmn
spec:
ports:
- protocol: TCP
name: web
port: 3000
selector:
app: modeler-app
To deploy Open-BPMN in your cluster create the namespace and apply your Pod configuration:
$ kubectl create namespace open-bpmn
$ kubectl apply -f apps/open-bpmn