安裝與組態 > 使用 ThingWorx Docker > 設定 ThingWorx Docker > 設定 ThingWorx Docker 建構
設定 ThingWorx Docker 建構
欲建構 ThingWorx Docker 映像,請執行下列兩個動作:
確保所需的二進位已暫存且可用於建構流程。
使用適當的值修改 build.env 變數檔案。
所需檔案
欲建構 ThingWorx Docker,需要使用下列檔案。
所有平台版本所需的檔案:
平台
所需檔案
範例檔案
template-processor
此 PTC 工具將在開始根據執行環境提供變數及格式組態檔案時提供至 Docker 容器內的兩個剖析範本。
template-processor-12.0.0.9-application.tar.gz
tomcat
Tomcat 封存檔案從執行 ThingWorx Platform 的 Apache 取得。
tomcat-9.0.21.tar.gz
java
Java JDK (版本 8) 封存檔案從 Oracle 取得。
jdk-8u172-linux-x64.tar.gz
各個平台版本所需的封存檔案:
平台
範例檔案
ThingWorx Platform H2
Thingworx-Platform-H2-8.4.1-b2126.zip
ThingWorx Platform PostgreSQL
Thingworx-Platform-Postgres-8.4.1-b2126.zip
ThingWorx Platform Microsoft SQL Server
Thingworx-Platform-Mssql-8.4.1-b2126.zip
此版本還需要 Microsoft SQL Server 的 Microsoft JDBC Driver。
sqljdbc_6.0.8112.200_enu.tar.gz
ThingWorx Platform Azure SQL
Thingworx-Platform-Azuresql-8.4.1-b2126.zip
此版本還需要 Microsoft SQL Server 的 Microsoft JDBC Driver。
sqljdbc_6.0.8112.200_enu.tar.gz
* 
如果從 PTC 支援網站下載檔案,則下載的檔案將使用與 MED-12345-CD-084_ThingWorx-Platform-H2-8-4-0.zip 類似的命名。指令集採用 Thingworx-Platform-type-version.zip 格式。
build.env 變數
Build.env 檔案包含必須設定的變數的清單。必須設定下列變數:
變數名稱
預設值
註解
PLATFORM_VERSION
8.4.1-b2126
指定平台版本。
JAVA_VERSION
8u172
指定 Oracle Java JDK 的版本。
TOMCAT_VERSION
9.0.21
指定 Apache Tomcat 的版本。
TEMPLATE_PROCESSOR_VERSION
12.0.0.12
指定 staging 資料夾中 template-processor 封存檔案的版本。
PLATFORM_SETTINGS_FILE
platform-settings.json
指定 (包括在 staging 資料夾中的) 基礎 ThingWorx 設定檔案的路徑。
BUILD_TEST_DBS
true
決定是否要建構用於測試的資料庫映像,以及平台映像。設定為 true 以建構資料庫映像。
PLATFORM_H2_VERSION
8.4.1-b2126
指定要建構的 ThingWorx H2 Platform 的版本。僅建構 H2 容器時需要。
PLATFORM_H2_ARCHIVE
Thingworx-Platform-H2-8.4.1-b2126.zip
指定 staging 資料夾中 ThingWorx H2 .zip 檔案的檔案名稱。僅建構 H2 容器時需要。
PLATFORM_POSTGRES_VERSION
8.4.1-b2126
指定要建構的 ThingWorx PostgreSQL Platform 的版本。僅建構 PostgreSQL 容器時需要。
PLATFORM_POSTGRES_ARCHIVE
Thingworx-Platform-Postgres-8.4.1-b2126.zip
指定 staging 資料夾中 ThingWorx PostgreSQL .zip 檔案的檔案名稱。僅建構 PostgreSQL 容器時需要。
PLATFORM_MSSQL_VERSION
8.4.1-b2126
指定要建構的 ThingWorx Microsoft SQL Server Platform 的版本。僅建構 Microsoft SQL Server 容器時需要。
PLATFORM_MSSQL_ARCHIVE
Thingworx-Platform-Mssql-8.4.1-b2126.zip
指定 staging 資料夾中 ThingWorx Microsoft SQL Server .zip 檔案的檔案名稱。僅建構 Microsoft SQL Server 容器時需要。
SQLDRIVER_VERSION
6.0.8112.200
指定要安裝的 Microsoft JDBC Driver for SQL Server 的版本。僅建構 Microsoft SQL Server 容器時需要。
MSSQL_DB_TWX_DATABASE_PASSWORD
無預設值 - 必須手動設定
指定 Microsoft SQL Server 資料庫使用者的密碼。如果已啟用 BUILD_TEST_DBS 且正在建構 Microsoft SQL Server 映像,此選項必須設定為用於映像建構流程。
確保密碼至少 8 個字元長,且包含下列四個集合中三個集合內的字元:大寫字母、小寫字母、以 10 為進位基底的數字、符號。
MSSQL_DB_TWX_DATABASE_USERNAME
無預設值 - 必須手動設定
指定 Microsoft SQL Server 資料庫使用者的使用者名稱。如果已啟用 BUILD_TEST_DBS 且正在建構 Microsoft SQL Server 映像,此選項必須設定為用於映像建構流程。
MSSQL_DB_TWX_DATABASE_SCHEMA
無預設值 - 必須手動設定
指定此為 Microsoft SQL Server 資料庫的資料庫結構描述。如果已啟用 BUILD_TEST_DBS 且正在建構 Microsoft SQL Server 映像,此選項必須設定為用於映像建構流程。
MSSQL_DB_SA_PASSWORD
無預設值 - 必須手動設定
指定 Microsoft SQL Server sa 使用者的密碼。如果已啟用 BUILD_TEST_DBS 且正在建構 Microsoft SQL Server 映像,此選項必須設定為用於映像建構流程。
確保密碼至少 8 個字元長,且包含下列四個集合中三個集合內的字元:大寫字母、小寫字母、以 10 為進位基底的數字、符號。
PLATFORM_AZURESQL_VERSION
8.4.1-b2126
指定要建構的 ThingWorx Azure SQL Platform 的版本。僅建構 Azure SQL 容器時需要。
PLATFORM_AZURESQL_ARCHIVE
Thingworx-Platform-Azuresql-8.4.1-b2126.zip
指定 staging 資料夾中 ThingWorx Azure SQL Server .zip 檔案的檔案名稱。僅建構 Azure SQL 容器時需要。
AZURESQL_SQLDRIVER_VERSION
6.0.8112.200
指定要安裝的 Microsoft JDBC Driver for Azure SQL 的版本。僅建構 Azure SQL 容器時需要。
只有當預設值與 staging 資料夾中的檔案不相符時,才必須設定下列變數:
變數名稱
預設值
註解
TOMCAT_ARCHIVE
tomcat-9.0.21.tar.gz
指定 staging 資料夾中 Tomcat 封存檔案的名稱。
JAVA_ARCHIVE
jdk-8u172-linux-x64.tar.gz
指定 staging 資料夾中 Java 封存檔案的名稱。
SQLDRIVER_ARCHIVE
sqljdbc_6.0.8112.200_enu.tar.gz
指定 staging 資料夾中 Microsoft JDBC Driver for SQL Server 封存檔案的名稱。僅建構 Microsoft SQL Server 容器時需要。
TEMPLATE_PROCESSOR_ARCHIVE
template-processor-12.0.0.10-application.tar.gz
指定 staging 資料夾中 template-processor 封存檔案的名稱。
暫存檔案
必須將建構 Docker 映像所需的檔案放置在屬於此發行版本的 staging 資料夾中。staging 資料夾應已包含基礎 platform-settings.json 檔案。
為協助暫存,Apache Tomcat 和 Microsoft JDBC Driver for SQL Server 的已配置版本 (預設版本) 可以自動下載。
欲自動下載:
1. 請確定已適當地設定 build.env 檔案變數。
2. 執行指令 ./build.sh stage
如果沒有任何錯誤,檔案應位於 staging 資料夾中,且應該與您的 build.env 設定相符。
可以透過下列方式取得所需檔案:
Java
由於需要接受 Oracle 的授權條款,因此應從 Oracle 手動下載 Java。此程式在 Java SE Development Kit 8 下載頁提供。接受頁面上的授權合約,然後下載 Linux x64 tar.gz 檔案 (例如:jdk-8u172-linux-x64.tar.gz)。
將此檔案儲存在 staging 資料夾中,並確保 build.env 檔案中的 JAVA_VERSIONJAVA_ARCHIVE 變數正確。
ThingWorx Platform 封存檔案
從包含此 Dockerfile 發行版本的 PTC 軟體下載網站中相同 ThingWorx Platform 部份下載 ThingWorx Platform 封存檔案。務必與 Dockerfiles 集合使用相同的 ThingWorx 版本,因為可能會有差異。範例檔案:Thingworx-Platform-H2-8.4.1-b2126.zip
將此檔案儲存在 staging 資料夾中,並確保 build.env 檔案中的 PLATFORM_TYPE_VERSIONPLATFORM_TYPE_ARCHIVE 變數正確。
範本處理器封存檔案
template-processor 工具依預設包括在 staging 資料夾中,應自動包括在 Docker 版次中。請確定 TEMPLATE_PROCESSOR_VERSIONTEMPLATE_PROCESSOR_ARCHIVE build.env 檔案設定正確。
Tomcat 封存檔案
如果無法自動下載 Tomcat,請直接從 Apache 的 Tomcat 9 軟體下載網站下載。選擇下載 Core 版本,然後選取 tar.gz。範例檔案:apache-tomcat-9.0.21.tar.gz
將此檔案儲存在 staging 資料夾中,並確保 build.env 檔案中的 TOMCAT_VERSIONTOMCAT_ARCHIVE 變數正確。請注意預期預設名稱為 tomcat version.tar.gz,除非在 build.env 內進行了變更。
Microsoft JDBC Driver for SQL Server
如果無法自動下載 Microsoft JDBC Driver,或者您想要使用替代版本,請直接從 Microsoft 的 Microsoft JDBC Driver 6.0 for SQL Server 下載。選取「英文」版本 (因為檔案結構與替代語言不同)。在下列頁面中,選取 sqljdbc_version_enu.tar.gz,然後按一下「下一步」
將此檔案儲存在 staging 資料夾中,並確保 build.env 檔案中的 SQLDRIVER_VERSIONSQLDRIVER_ARCHIVE 變數正確。
Microsoft JDBC Driver for Azure SQL
如果無法自動下載 Microsoft JDBC Driver,或者您想要使用替代版本,請直接從 Microsoft 的 Microsoft JDBC Driver 6.0 for SQL Server 下載。選取「英文」版本 (因為檔案結構與替代語言不同)。在下列頁面中,選取 sqljdbc_version_enu.tar.gz,然後按一下「下一步」
將此檔案儲存在 staging 資料夾中,並確保 build.env 檔案中的 AZURE_SQLDRIVER_VERSIONAZURE_SQLDRIVER_ARCHIVE 變數正確。