Installation and Upgrade > Installing ThingWorx > Using ThingWorx Docker > Getting Started with ThingWorx Docker
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.
Was this helpful?