ThingWorx Docker-Builds einrichten
Um ThingWorx Docker-Images zu erzeugen, führen Sie die beiden folgenden Aktionen aus:
Stellen Sie sicher, dass die erforderlichen Binärdateien bereitgestellt und für den Build-Prozess verfügbar sind.
Ändern Sie die Variablendatei build.env mit den entsprechenden Werten.
Erforderliche Dateien
Die folgenden Dateien sind erforderlich, um ThingWorx Docker zu erzeugen.
Erforderliche Dateien für alle Plattformversionen:
Plattform
Erforderliche Datei
Beispieldatei
template-processor
Ein Tool, das von PTC bereitgestellt wird, um Vorlagen innerhalb des Docker-Containers zu analysieren, wenn mit der Bereitstellung von Variablen begonnen wird, und Konfigurationsdateien basierend auf der ausgeführten Umgebung zu formatieren.
template-processor-12.0.0.9-application.tar.gz
tomcat
Die Tomcat-Archivdatei, die von Apache abgerufen wurde, um die ThingWorx Plattform auszuführen.
tomcat-9.0.21.tar.gz
java
Die Java JDK-Archivdatei (Version 8), die aus Oracle abgerufen wird.
jdk-8u172-linux-x64.tar.gz
Erforderliche Archivdateien für die einzelnen Plattformversionen:
Plattform
Beispieldatei
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
Für diese Version ist auch der Microsoft JDBC-Treiber für SQL Server von Microsoft erforderlich.
sqljdbc_6.0.8112.200_enu.tar.gz
ThingWorx Platform Azure SQL
Thingworx-Platform-Azuresql-8.4.1-b2126.zip
Für diese Version ist auch der Microsoft JDBC-Treiber für SQL Server von Microsoft erforderlich.
sqljdbc_6.0.8112.200_enu.tar.gz
* 
Wenn Sie eine Datei von der PTC Support-Website herunterladen, wird die heruntergeladene Datei ähnlich wie MED-12345-CD-084_ThingWorx-Platform-H2-8-4-0.zipbenannt. Die Skripts übernehmen Thingworx-Platform-type-version.zip.
build.env-Variablen
Die Datei build.env enthält eine Liste von Variablen, die Sie festlegen müssen. Die folgenden Variablen müssen festgelegt werden:
Variablenname
Standard
Kommentar
PLATFORM_VERSION
8.4.1–b2126
Gibt die Plattformversion an.
JAVA_VERSION
8u172
Gibt die Version des Oracle Java JDK an.
TOMCAT_VERSION
9.0.21
Gibt die Version von Apache Tomcat an.
TEMPLATE_PROCESSOR_VERSION
12.0.0.12
Gibt die Version der Archivdatei "template-processor" im Ordner staging an.
PLATFORM_SETTINGS_FILE
platform-settings.json
Gibt den Pfad zu einer ThingWorx Grundeinstellungsdatei an (im Ordner staging enthalten).
BUILD_TEST_DBS
true
Bestimmt, ob neben den Plattform-Images Datenbank-Images zum Testen erstellt werden sollen. Auf true festlegen, um die Datenbankbilder zu erzeugen.
PLATFORM_H2_VERSION
8.4.1-b2126
Gibt die Version der zu erstellenden ThingWorx H2-Plattform an. Nur erforderlich, wenn H2-Container erstellt werden.
PLATFORM_H2_ARCHIVE
Thingworx-Platform-H2-8.4.1-b2126.zip
Gibt den Dateinamen der .zip-Datei für ThingWorx H2 im Ordner staging an. Nur erforderlich, wenn H2-Container erstellt werden.
PLATFORM_POSTGRES_VERSION
8.4.1-b2126
Gibt die Version der zu erstellenden ThingWorx PostgreSQL-Plattform an. Nur erforderlich, wenn PostgreSQL-Container erstellt werden.
PLATFORM_POSTGRES_ARCHIVE
Thingworx-Platform-Postgres-8.4.1-b2126.zip
Gibt den Dateinamen der .zip-Datei für ThingWorx PostgreSQL im Ordner staging an. Nur erforderlich, wenn PostgreSQL-Container erstellt werden.
PLATFORM_MSSQL_VERSION
8.4.1-b2126
Gibt die Version der zu erstellenden ThingWorx Microsoft SQL Server-Plattform an. Nur erforderlich, wenn Microsoft SQL Server-Container erstellt werden.
PLATFORM_MSSQL_ARCHIVE
Thingworx-Platform-Mssql-8.4.1-b2126.zip
Gibt den Dateinamen der .zip-Datei für ThingWorx Microsoft SQL Server im Ordner staging an. Nur erforderlich, wenn Microsoft SQL Server-Container erstellt werden.
SQLDRIVER_VERSION
6.0.8112.200
Gibt die zu installierende Version des Microsoft JDBC-Treibers für SQL Server an. Nur erforderlich, wenn Microsoft SQL Server-Container erstellt werden.
MSSQL_DB_TWX_DATABASE_PASSWORD
Kein Standard – muss manuell festgelegt werden
Gibt das Passwort für den Microsoft SQL Server-Datenbankbenutzer an. Wenn BUILD_TEST_DBS aktiviert ist und Microsoft SQL Server-Images erstellt werden, muss dies für die Verwendung durch den Image-Build-Prozess festgelegt werden.
Stellen Sie sicher, dass das Passwort mindestens 8 Zeichen lang ist und Zeichen aus drei der folgenden vier Sätze enthält: Großbuchstaben, Kleinbuchstaben, Basis-10-Ziffern und Symbole.
MSSQL_DB_TWX_DATABASE_USERNAME
Kein Standard – muss manuell festgelegt werden
Gibt den Benutzernamen für den Microsoft SQL Server-Datenbankbenutzer an. Wenn BUILD_TEST_DBS aktiviert ist und Microsoft SQL Server-Images erstellt werden, muss dies für die Verwendung durch den Image-Build-Prozess festgelegt werden.
MSSQL_DB_TWX_DATABASE_SCHEMA
Kein Standard – muss manuell festgelegt werden
Gibt an, dass dies das Datenbankschema für die Microsoft SQL Server-Datenbank ist. Wenn BUILD_TEST_DBS aktiviert ist und Microsoft SQL Server-Images erstellt werden, muss dies für die Verwendung durch den Image-Build-Prozess festgelegt werden.
MSSQL_DB_SA_PASSWORD
Kein Standard – muss manuell festgelegt werden
Gibt das Passwort für den Microsoft SQL Server-sa-Benutzer an. Wenn BUILD_TEST_DBS aktiviert ist und Microsoft SQL Server-Images erstellt werden, muss dies für die Verwendung durch den Image-Build-Prozess festgelegt werden.
Stellen Sie sicher, dass das Passwort mindestens 8 Zeichen lang ist und Zeichen aus drei der folgenden vier Sätze enthält: Großbuchstaben, Kleinbuchstaben, Basis-10-Ziffern und Symbole.
PLATFORM_AZURESQL_VERSION
8.4.1-b2126
Gibt die Version der zu erstellenden ThingWorx Azure SQL-Plattform an. Nur beim Erstellen von Azure SQL-Containern erforderlich.
PLATFORM_AZURESQL_ARCHIVE
Thingworx-Platform-Azuresql-8.4.1-b2126.zip
Gibt den Dateinamen der .zip-Datei für ThingWorx Azure SQL Server im Ordner staging an. Nur beim Erstellen von Azure SQL-Containern erforderlich.
AZURESQL_SQLDRIVER_VERSION
6.0.8112.200
Gibt die zu installierende Version des Microsoft JDBC-Treibers für Azure SQL an. Nur beim Erstellen von Azure SQL-Containern erforderlich.
Die folgenden Variablen müssen nur festgelegt werden, wenn die Standardwerte nicht mit den Dateien im Ordner staging übereinstimmen:
Variablenname
Standard
Kommentar
TOMCAT_ARCHIVE
tomcat-9.0.21.tar.gz
Gibt den Namen der Tomcat-Archivdatei im Ordner staging an.
JAVA_ARCHIVE
jdk-8u172-linux-x64.tar.gz
Gibt den Namen der JAR-Datei im Ordner staging an.
SQLDRIVER_ARCHIVE
sqljdbc_6.0.8112.200_enu.tar.gz
Gibt den Namen der Archivdatei für den Microsoft JDBC-Treiber für SQL Server im Ordner staging an. Nur erforderlich, wenn Microsoft SQL Server-Container erstellt werden.
TEMPLATE_PROCESSOR_ARCHIVE
template-processor-12.0.0.10-application.tar.gz
Gibt den Namen der Archivdatei template-processor im Ordner staging an.
Dateien bereitstellen
Sie müssen die zum Erstellen der Docker-Images erforderlichen Dateien im Ordner staging, der Teil dieser Version ist, platzieren. Der Ordner staging sollte bereits eine platform-settings.json-Basisdatei enthalten.
Um die Bereitstellung zu unterstützen, können Apache Tomcat und die konfigurierte Version des Microsoft JDBC-Treibers für SQL Server (die Standardversion) automatisch heruntergeladen werden.
So nehmen Sie den automatischen Download vor:
1. Stellen Sie sicher, dass Sie die Dateivariablen von build.env entsprechend festgelegt haben.
2. Führen Sie den Befehl aus./build.sh stage.
Wenn keine Fehler vorliegen, sollten sich die Dateien im Ordner staging befinden, und sie sollten mit Ihren build.env-Einstellungen übereinstimmen.
Die anderen erforderlichen Dateien können Sie folgendermaßen erhalten:
Java
Laden Sie Java manuell aus Oracle herunter, da Sie die Lizenzbedingungen von Oracle akzeptieren müssen. Die Datei ist auf der Seite Java SE Development Kit 8 Downloads verfügbar. Nachdem Sie den Lizenzvertrag auf der Seite angenommen haben, laden Sie die Datei Linux x64 tar.gz herunter (Beispiel: jdk-8u172-linux-x64.tar.gz).
Speichern Sie diese Datei im Ordner staging, und stellen Sie sicher, dass die Variablen JAVA_VERSION und JAVA_ARCHIVE in der Datei build.env korrekt sind.
ThingWorx Platform Archivdateien
Laden Sie die ThingWorx Platform Archivdateien in dem ThingWorx Platform Teil der Website PTC Software Downloads herunter, die diese Dockerfile-Version enthält. Stellen Sie sicher, dass dieselbe ThingWorx Version wie für den Satz von Dockerfiles verwendet wird, da es Unterschiede geben kann. Beispieldatei: Thingworx-Platform-H2-8.4.1-b2126.zip
Speichern Sie diese Datei im Ordner staging, und stellen Sie sicher, dass die Variablen PLATFORM_TYPE_VERSION und PLATFORM_TYPE_ARCHIVE in der Datei build.env korrekt sind.
template-processor-Archivdatei
Das Tool template-processor ist standardmäßig im Ordner staging enthalten und sollte automatisch in die Docker-Builds eingeschlossen werden. Stellen Sie sicher, dass die Einstellungen TEMPLATE_PROCESSOR_VERSION und TEMPLATE_PROCESSOR_ARCHIVE der Dateibuild.env korrekt sind.
Tomcat-Archivdatei
Wenn Sie Tomcat nicht automatisch herunterladen können, laden Sie die Datei direkt von Apache auf der Website für den Download der Tomcat 9-Software herunter. Wählen Sie die Core-Version und dann tar.gz aus. Beispieldatei: apache-tomcat-9.0.21.tar.gz
Speichern Sie diese Datei im Ordner staging, und stellen Sie sicher, dass die Variablen TOMCAT_VERSION und TOMCAT_ARCHIVE in der Datei build.env korrekt sind. Beachten Sie, dass der standardmäßig erwartete Name tomcat-version.tar.gz lautet, es sei denn, er wurde in der Datei build.env geändert.
Microsoft JDBC-Treiber für SQL Server
Wenn Sie den Microsoft JDBC-Treiber nicht automatisch herunterladen können oder eine andere Version verwenden möchten, laden Sie ihn direkt von Microsoft auf der Seite für den Microsoft JDBC-Treiber 6.0 für SQL Server herunter. Wählen Sie die Version Englisch aus (da sich die Dateistruktur bei anderen Sprachen unterscheidet). Wählen Sie auf der folgenden Seite sqljdbc_version_enu.tar.gz aus, und klicken Sie auf Weiter.
Speichern Sie diese Datei im Ordner staging, und stellen Sie sicher, dass die Variablen SQLDRIVER_VERSION und SQLDRIVER_ARCHIVE in der Datei build.env korrekt sind.
Microsoft JDBC-Treiber für Azure SQL
Wenn Sie den Microsoft JDBC-Treiber nicht automatisch herunterladen können oder eine andere Version verwenden möchten, laden Sie ihn direkt von Microsoft auf der Seite für den Microsoft JDBC-Treiber 6.0 für SQL Server herunter. Wählen Sie die Version Englisch aus (da sich die Dateistruktur bei anderen Sprachen unterscheidet). Wählen Sie auf der folgenden Seite sqljdbc_version_enu.tar.gz aus, und klicken Sie auf Weiter.
Speichern Sie diese Datei im Ordner staging, und stellen Sie sicher, dass die Variablen AZURE_SQLDRIVER_VERSION und AZURE_SQLDRIVER_ARCHIVE in der Datei build.env korrekt sind.