Getting Started with ThingWorx Docker
For ThingWorx 9.3 and Later Versions
Starting ThingWorx 9.3, you first need to build the Security CLI Docker image before running the ThingWorx docker container. Topics in the
Setting Up, Building, and Configuring ThingWorx Docker section provide detailed information on setting up, building, and configuring the Security CLI Docker image. Following is a summary of the required steps:
1. Download Java, ThingWorx Security Tool Archives, and Template Processor Archive.
2. Update build.env for the Security CLI Docker image with the updated parameters.
Variable Name
|
Default
|
Comment
|
JAVA_ARCHIVE
|
jdk-11.x.x-linux-x64.tar.gz
amazon-corretto-11.0.8.10.1-linux-x64.tar.gz
|
The file name of the Java archive as it exists in the staging folder.
|
SECURITY_TOOL_VERSION
|
securityToolVersion
|
The version of the Security Tool library
|
SECURITY_TOOL_ARCHIVE
|
securityToolFileName
|
The Security Tool Library name as it exists in the staging folder.
|
TEMPLATE_PROCESSOR_ARCHIVE
|
template-processor-12.1.0.11-application.tar.gz
|
The version of the template-processor archive as it exists in the staging folder.
|
3. Run the following command to build the image: ./build.sh
After the build process completes, the following Docker image is available: security-common-cli-${SECURITY_TOOL_VERSION}
Getting Started with ThingWorx Docker
To get up and running quickly with the Dockerfiles, perform the following steps:
1. Download Java and place it in the staging folder. Check out the
Release Advisor for compatibility information.
◦ Update build.env with the downloaded Java version.
2. Download ThingWorx and place it in the staging folder.
◦ The ThingWorx artifact should be named Thingworx-Platform-[H2|Postgres|Mssql|Azuresql]-version.zip. Rename the file as necessary and mention the version in build.env under PLATFORM_VERSION.
3. Download Apache Tomcat and place it in the staging folder. Check out the
Release Advisor for compatibility information.
◦ Update build.env with the downloaded Tomcat version.
4. If you plan to use MS SQL as the persistence provider, download the compatible version of Microsoft JDBC Driver. Check out the
Release Advisor for compatibility information.
◦ Update build.env with the downloaded JDBC Driver version.
5. Enter ./build.sh type for the persistence provider you would like to use.
type can be one of the following values:
◦ h2
◦ postgres
◦ mssql
◦ azuresql
6. Update the docker-compose-type.yml file for the desired persistence provider.
◦ For h2, specify THINGWORX_INITIAL_ADMIN_PASSWORD.
◦ For postgres, specify
TWX_DATABASE_USERNAME,
TWX_DATABASE_PASSWORD, and
TWX_DATABASE_SCHEMA in both the postgresql and platform sections, and
THINGWORX_INITIAL_ADMIN_PASSWORD in the platform section. Ensure you define the variables identically in both postgresql and platform sections for the environment to get started. Additional postgres variables and their details can be found at the
Docker Hub.
|
TWX_DATABASE_USERNAME must match TWX_DATABASE_SCHEMA due to a limitation of the existing implementation. Also, TWX_DATABASE_USERNAME must not be "postgres".
|
◦ For mssql, specify TWX_DATABASE_PASSWORD and THINGWORX_INITIAL_ADMIN_PASSWORD in the platform section.
7. Type docker compose -f docker-compose-type.yml up -d.
You should be up and running and able to access your docker image via the URL, localhost:8080/Thingworx.