To ensure that your site remains up-to-date with any
important fixes that are delivered subsequent to the latest HCL Commerce release,
or to continue to use older HCL Commerce release images, this group of tasks can
be used to manually rebuild custom images to include important IBM stack
updates. The Transaction server Docker container (ts-app) is updated with WebSphere Application Server
fix packs, interim fixes, and IBM Java SDK updates.
Procedure
-
Download
and extract the sample Dockerfile scripts and Installation Manager response
files into the directory where you build your images.
These sample archives place template
Installation Manager response files in the
correct directories. The archive also contains unique sample Dockerfiles for each stack
item to illustrate how to integrate response files for each type of upgrade into the
Dockerfile.
For the Transaction server, a Dockerfile is constructed from
these samples.
The Dockerfile additions can be used to install:
- A WebSphere Application Server fix pack.
- One or more WebSphere Application Server interim fixes.
- An update to the WebSphere Application Server IBM Java SDK.
To update an image with multiple items, the associated Dockerfile will both
download and extract each package individually, and then call
Installation Manager
multiple times to install them.
-
For each WebSphere Application Server fix pack, interim fix, or Java SDK update, edit the
associated Installation Manager response file.
These files contain a
<repository> section that describes the
location of the specific installation file, and an
<install> section,
which includes the specific instructions to
Installation Manager on what to install
within the container. Each product requires this section to correctly reference its
version or ID, and its features.
Once created, the name and locations of these files
will be referenced within your Dockerfile.
-
Uncomment and configure the
<repository> section.
Point the location of the repository to the unique directory within the image
where your package will be extracted to.
For
example:
<repository location='/SETUP/tmp/packages/9.0.5.20-WAS-FP/'/>
Note: The extracted package creates a directory with a name that is
the same as the package archive name. Do not include any file
extensions.
-
Uncomment and configure the
<offering> section.
This is unique to each
WebSphere Application Server fix pack, interim fix, or IBM Java
SDK update, and must align with the specific package that is set as the repository.
The following table highlights the different profile requirements for fix packs,
interim fixes, and IBM Java SDK updates. You can obtain the value for
version or
id by extracting each update package
and examining
repository.xml.
| Prerequisite product |
Configuration |
| WebSphere Application Server |
- To apply a fix pack, include the following, and modify the value for
version.<offering profile='IBM WebSphere Application Server V9.0' id='com.ibm.websphere.BASE.v90' version='9.0.5009.20210823_0038' features='core.feature,ejbdeploy,thinclient,embeddablecontainer'/>
- To apply an interim fix, include the following, and modify the value
for
id.<offering profile='IBM WebSphere Application Server V9.0' id='9.0.0.7-WS-WAS-IFPH61504'/>
Note: You can include additional lines in order to
apply multiple interim fixes.
- To apply an IBM Java SDK update, include the following, and modify the
value for
version.<offering profile='IBM WebSphere Application Server V9.0' id='com.ibm.java.jdk.v8' version='8.0.6030.20210914_1230' features='com.ibm.sdk.8'/>
|
-
Create or modify your Transaction server image Dockerfile.
-
Using the following as a template, create or modify your Dockerfile and include
values to conform to your prerequisite software update requirements.
For each update within the image, ensure that you duplicate and modify the
download, extraction, and installation steps.
For example, if you are including a fix pack, two interim fixes, and an SDK update,
there will be a total of four separate wget,
unzip, and installation commands.
# Switch to root user
USER root
# Using current image
FROM commerce/image-name:9.1.x.x
# Copy the tmp directory
COPY SETUP/ /SETUP/
# Create and enter temporary directory
RUN mkdir -p /SETUP/tmp/packages/ && \
cd /SETUP/tmp/packages/ && \
# Download update package
wget --user=username --password=password ftp://FTP-Server-URL/location-to-file/filename.zip && \
# Extract update package to temporary directory
unzip /SETUP/tmp/packages/filename.zip -d /SETUP/tmp/packages/filename && \
# Install update package
/opt/WebSphere/IM/eclipse/tools/imcl input /SETUP/twasResponseFile/install-file.xml -log /SETUP/twasResponseFile/install-file-log.log -acceptLicense && \
# Delete temporary directory
rm -rf /SETUP/tmp/ && \
-
If you are upgrading to a later WebSphere Application Server fix pack on HCL Commerce 9.1.8.1, you must complete additional steps.
- Log in to the My HCLSoftware portal.
- Locate and download HCL Commerce Enterprise V9.1.8.1 - Transaction
Server Backup Folder.
- Copy backupFolder9.1.8.1.zip to
/twas/SETUP/tmp/packages/. Create this directory if it does
not exist.
- Include the following lines within your Dockerfile along with the other
unzip commands. Ensure that this is before calling Installation Manager.
unzip /SETUP/tmp/packages/backupFolder9.1.8.1.zip -d /SETUP/tmp/packages/backupFolder9.1.8.1 && \
mv /SETUP/tmp/packages/backupFolder9.1.8.1/* /opt/WebSphere/AppServer/properties/patches/backup/ && \
In version 9.1.8.1, if you are upgrading to a later WebSphere Application Server fix
pack on HCL Commerce 9.1.9.0, you must complete additional steps.
- Log in to the .
- Locate and download HCL Commerce Enterprise V9.1.9.0 - Transaction
Server Backup Folder.
- Copy backupFolder9.1.9.0.zip to
/twas/SETUP/tmp/packages/. Create this directory if it does
not exist.
- Include the following lines within your Dockerfile along with the other
unzip commands. Ensure that this is before calling Installation Manager.
unzip /SETUP/tmp/packages/backupFolder9.1.9.0.zip -d /SETUP/tmp/packages/backupFolder9.1.9.0 && \
mv /SETUP/tmp/packages/backupFolder9.1.9.0/* /opt/WebSphere/AppServer/properties/patches/backup/ && \
If you are upgrading to a later WebSphere Application Server fix pack on HCL Commerce 9.1.10.0, you must complete additional steps.
- Log in to the My HCLSoftware portal.
- Locate and download HCL Commerce Enterprise V9.1.10.0 - Transaction
Server Backup Folder.
- Copy backupFolder9.1.10.0.zip to
/twas/SETUP/tmp/packages/. Create this directory if it does
not exist.
- Include the following lines within your Dockerfile along with the other
unzip commands. Ensure that this is before calling Installation Manager.
unzip /SETUP/tmp/packages/backupFolder9.1.10.0.zip -d /SETUP/tmp/packages/backupFolder9.1.10.0 && \
mv /SETUP/tmp/packages/backupFolder9.1.10.0/* /opt/WebSphere/AppServer/properties/patches/backup/ && \
If you are upgrading to a later WebSphere Application Server fix pack on HCL Commerce 9.1.13.0, you must complete additional steps.
- Log in to the My HCLSoftware portal.
- Locate and download HCL Commerce Enterprise V9.1.13.0 - Transaction
Server Backup Folder.
- Copy backupFolder9.1.13.0.zip to
/twas/SETUP/tmp/packages/. Create this directory if it does
not exist.
- Include the following lines within your Dockerfile along with the other
unzip commands. Ensure that this is before calling Installation Manager.
unzip /SETUP/tmp/packages/backupFolder9.1.13.0.zip -d /SETUP/tmp/packages/backupFolder9.1.13.0 && \
mv /SETUP/tmp/packages/backupFolder9.1.13.0/* /opt/WebSphere/AppServer/properties/patches/backup/ && \
-
Build a new custom Docker image containing the prerequisite update changes. If you are
building multiple images, repeat this step for each one.
Run the following command with your own repository name, release version, image name,
and
tag.
docker build -t commerce.companyabc.com/9.1.x.x/imagename:imagetag .
A new image is generated using the customized Dockerfile. The created image
contains each fix pack, interim fix, and/or SDK update that was configured and installed
during the build process.
-
Verify that the prerequisite software updates are successfully
applied.
-
Deploy a container with the newly created image.
docker run -d -it --entrypoint /bin/bash -e LICENSE=accept imageid
-
Verify the running version of the updated prerequisite software.
| Prerequisite product |
Version verification command |
| WebSphere Application Server |
- To verify a fix
pack:
cd /opt/WebSphere/AppServer/bin
./versionInfo.sh
- To verify an interim
fix:
cd /opt/WebSphere/AppServer/bin
./versionInfo.sh -ifixes
- To verify the IBM Java
SDK:
cd /opt/WebSphere/AppServer/bin
./versionInfo.sh
|
Results
Your custom Docker image is generated, containing any updated prerequisite
IBM software. You must repeat this process for each HCL Commerce image with IBM
software in your deployment. Then, you must fully test and deploy these images into your
production environment.