BusinessEvents Docker Utility Features

The BusinessEvents Docker utilities provide various features that you can use to successfully run BusinessEvents application in Docker.

Custom Docker Files

To include additional environment variables in the generated Dockerfile, place the custom file with the extension .custom in the target directory. The Dockerfile generation utility merge these custom files with the generated Dockerfile.

External JAR Files

If an application is dependent on some external/third party JAR files, copy the required JAR files to the target directory. The BusinessEvents application Docker image generation utility copies these JAR files to the BusinessEvents Docker image and add them to the engine classpath.

Global Variables

The Dockerfile generation utility queries the enterprise archive (EAR) and CDD file, and exposes the global variables as environment variables in the Dockerfile.

If a global variable is overridden in the CDD file, the CDD global variable takes precedence and the Dockerfile is updated with the CDD value.

Docker Ports

If your application requires to expose its network ports, use BusinessEvents global variable for such ports and ensure that name of the global variable has a suffix _PORT in it. The Dockerfile generation utility exposes all such global variables using Docker EXPOSE command in the Dockerfile.

Docker Volumes

If an application needs to access an external file system or needs to persist file system data across Docker runs, then expose the required file system paths as Volumes in the Dockerfile. In those file system paths, the name of the global variable should contain a suffix _PATH. All those global variables with suffix _PATH are mapped to Docker Volume.

Backing Store Shared Resources

If an application has a backing store with the Shared All mode then the associated shared resource properties are exposed in the Dockerfile as environment variables. These variables are then updated in the shared resource of the backing store as global variables.

The following properties are exposed as global variables:

  • BACKINGSTORE_JDBC_DRIVER
  • BACKINGSTORE_JDBC_URL
  • BACKINGSTORE_JDBC_USERNAME
  • BACKINGSTORE_JDBC_PASSWORD
  • BACKINGSTORE_JDBC_POOL_SIZE
  • BACKINGSTORE_JDBC_LOGIN_TIMEOUT
  • BACKINGSTORE_JDBC_USE_SSL
Note: Before generating the dockerfile for a Shared Resource, ensure that the required driver libraries are present in the target directory.

External Files

If your application requires an external file for the Docker, run those files should be included in the Docker image. To include these files, declare a global variable in the application project with the suffix _FILE and the path of the file as its value. Also, place those files in the target directory under the folder files. The utility creates directories for the file path and add the files to that location. The file location is also added as a Volume in the Dockerfile, so that you can map that location and update files at run time.