Extending the Base Docker Image
The TIBCO BusinessWorks™ Container Edition base Docker image must be uploaded to your Docker environment before deploying any applications.
This base Docker image can be extended to support third-party drivers, OSGI bundles, integration with application configuration management systems, and application certificate management.
Prerequisites
Create the base Docker image for Linux or Windows container following steps in Creating the BWCE Base Docker Image for Linux Containers or Creating the BWCE Base Docker Image for Windows Container.
- Provision supported JDBC drivers
- Run bwinstall[.exe] help from <BWCE_HOME>/bin and follow instructions to add the driver to your TIBCO BusinessWorks Container Edition installation.
- Copy all the contents from <TIBCO_HOME>/bwce/version/config/drivers/shells/<driverspecific runtime>/runtime/plugins/ to a temporary folder.
- From the temporary folder use the Docker file given below to copy these jars into the base Docker image:
FROM tibco/bwce:latest COPY . /resources/addons/jars
- Provision the OSGi bundle jar(s)
- Application Configuration Management
For more information, see Using Configurations from Configuration Management Services.
- Certificate Management
Certificates are used by applications to connect to different systems. For example, a certificate to connect to TIBCO Enterprise Message Service.
Bundling certificates with your application is not a good idea as you would need to rebuild your application when the certificates expire. To avoid that, copy your certificates into a temporary folder. From the temporary folder use the Docker file given below to copy these certificates into the base Docker image:FROM tibco/bwce:latest COPY . /resources/addons/certs
Once the certificates expire, you can copy the new certificates into the base Docker image without rebuilding your application. Just deploy your application with the base Docker image. To access the certificates folder from your application, use the environment variable BW_KEYSTORE_PATH. For example, #BW_KEYSTORE_PATH#/mycert.jks in your application property.
- Provision the TIBCO BusinessWorks™ Container Edition Plug-in Runtime
To add TIBCO certified plug-ins:
- Download appropriate Plug-in packaging, for example TIBCO ActiveMatrix BusinessWorks™ Plug-in for WebSphere MQ, from https://edelivery.tibco.com.
- Locate the plug-in zip file,
<product id>_ePaas.zip or
TIB_<version>_<build number>_bwce-runtime.zip
from the downloaded artifacts and copy into a temporary folder. From the temporary folder use the Docker file given below to copy these plugin runtime zip files into the base Docker image:
FROM tibco/bwce:latest COPY *.zip /resources/addons/plugins
To add a plug-ins created using TIBCO ActiveMatrix BusinessWorks™ Plug-in Development Kit to runtime into your base Docker image:
- Install the plug-in if it is not installed.
- Navigate to the TIBCO_HOME/bwce/palettes/<plug in name>/<plugin version> directory and zip the lib and runtime folders into <plugin name>.zip.
- Copy <plugin name>.zip to a temporary folder.
- From the temporary folder use the Docker file given below to copy these plugin runtime zip files into the base Docker image:
FROM tibco/bwce:latest COPY *.zip /resources/addons/plugins
- Provision the third-party installations to runtime
To add the third-party installation to Docker image:
- Package third-party client installation into zip.
- Copy zip to a temporary folder.
- From the temporary folder use the Docker file given below to copy archive files into the base Docker image:
FROM tibco/bwce:latest COPY *.zip /resources/addons/thirdparty-installs
- Build the Docker image:
docker build -t YOUR-TAG.
- Provision to add custom JDBC driver
- Follow steps outlined in Enabling Custom Drivers section of JDBC Connection topic in the Bindings and Palette Reference guide. After the project has been exported as a plug-in, locate the JAR in the plug-ins folder and copy it to a temporary folder.
- From the temporary folder use the Docker file given below to copy these jars into the base Docker image:
FROM tibco/bwce:latest COPY . /resources/addons/jars
- Provision to add custom JMS driver
- Follow steps outlined in Enabling Custom Drivers section of JNDI Connection topic in the Bindings and Palette Reference guide. After the project has been exported as a plug-in, locate the JAR in the plug-ins folder and copy it to a temporary folder.
- From the temporary folder use the Docker file given below to copy these jars into the base Docker image:
FROM tibco/bwce:latest COPY . /resources/addons/jars
- Provision to use custom logs