Configuration des builds ThingWorx Docker
Pour générer des images ThingWorx Docker, effectuez les deux opérations suivantes :
Assurez-vous de mettre les binaires requis en staging et de les rendre disponibles pour le processus de compilation.
Modifiez le fichier de variables build.env avec les valeurs appropriées.
Fichiers requis
Les fichiers suivants sont requis pour générer des images ThingWorx Docker.
Fichiers requis pour toutes les versions de plateforme :
Plateforme
Fichier requis
Exemple de fichier
template-processor
Outil fourni par PTC pour analyser les modèles dans le conteneur Docker lorsqu'il commence à fournir des variables et formater les fichiers de configuration en fonction de l'environnement d'exécution.
template-processor-12.0.0.9-application.tar.gz
tomcat
Fichier d'archive Tomcat obtenu auprès d'Apache pour exécuter ThingWorx Platform.
tomcat-9.0.21.tar.gz
java
Fichier d'archive Java JDK (version 8) obtenu auprès d'Oracle.
jdk-8u172-linux-x64.tar.gz
Fichiers d'archive requis en fonction de la version de plateforme :
Plateforme
Exemple de fichier
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
Cette version requiert également le pilote Microsoft JDBC pour SQL Server de Microsoft.
sqljdbc_6.0.8112.200_enu.tar.gz
ThingWorx Platform Azure SQL
Thingworx-Platform-Azuresql-8.4.1-b2126.zip
Cette version requiert également le pilote Microsoft JDBC pour SQL Server de Microsoft.
sqljdbc_6.0.8112.200_enu.tar.gz
* 
Si vous téléchargez un fichier depuis le site de support PTC, le nom du fichier téléchargé sera de la forme MED-12345-CD-084_ThingWorx-Platform-H2-8-4-0.zip. Les scripts attendent un nom du type Thingworx-Platform-type-version.zip.
Variables build.env
Le fichier build.env contient une liste de variables que vous devez définir. Les variables à définir sont les suivantes :
Nom de variable
Par défaut
Commentaire
PLATFORM_VERSION
8.4.1–b2126
Spécifie la version de la plateforme.
JAVA_VERSION
8u172
Spécifie la version du Java JDK d'Oracle.
TOMCAT_VERSION
9.0.21
Spécifie la version d'Apache Tomcat.
TEMPLATE_PROCESSOR_VERSION
12.0.0.12
Spécifie la version du fichier d'archive template-processor dans le dossier staging.
PLATFORM_SETTINGS_FILE
platform-settings.json
Spécifie le chemin d'accès à un fichier de paramètres ThingWorx de base (inclus dans le dossier staging).
BUILD_TEST_DBS
true
Détermine s'il convient de générer des images de base de données pour le test, parallèlement aux images de la plateforme. Définissez cette variable sur true pour générer des images de la base de données.
PLATFORM_H2_VERSION
8.4.1-b2126
Spécifie la version de la plateforme ThingWorx H2 à générer. Uniquement obligatoire pour la génération de conteneurs H2.
PLATFORM_H2_ARCHIVE
Thingworx-Platform-H2-8.4.1-b2126.zip
Spécifie le nom de fichier du fichier .zip ThingWorx H2 dans le dossier staging. Uniquement obligatoire pour la génération de conteneurs H2.
PLATFORM_POSTGRES_VERSION
8.4.1-b2126
Spécifie la version de la plateforme ThingWorx PostgreSQL à générer. Obligatoire uniquement pour la génération de conteneurs PostgreSQL.
PLATFORM_POSTGRES_ARCHIVE
Thingworx-Platform-Postgres-8.4.1-b2126.zip
Spécifie le nom de fichier du fichier .zip ThingWorx PostgreSQL dans le dossier staging. Obligatoire uniquement pour la génération de conteneurs PostgreSQL.
PLATFORM_MSSQL_VERSION
8.4.1-b2126
Spécifie la version de la plateforme ThingWorx Microsoft SQL Server à générer. Obligatoire uniquement pour la génération de conteneurs Microsoft SQL Server.
PLATFORM_MSSQL_ARCHIVE
Thingworx-Platform-Mssql-8.4.1-b2126.zip
Spécifie le nom de fichier du fichier .zip ThingWorx Microsoft SQL Server dans le dossier staging. Obligatoire uniquement pour la génération de conteneurs Microsoft SQL Server.
SQLDRIVER_VERSION
6.0.8112.200
Spécifie la version à installer du pilote Microsoft JDBC pour SQL Server. Obligatoire uniquement pour la génération de conteneurs Microsoft SQL Server.
MSSQL_DB_TWX_DATABASE_PASSWORD
Pas de valeur par défaut : à définir manuellement
Spécifie le mot de passe de l'utilisateur de la base de données Microsoft SQL Server. Si BUILD_TEST_DBS est activé et que des images Microsoft SQL Server sont générées, cette variable requise par le processus de compilation d'image doit être définie.
Assurez-vous que le mot de passe comporte au moins huit caractères et qu'il contient des caractères de trois des quatre types suivants : majuscules, minuscules, chiffres en base 10 et symboles.
MSSQL_DB_TWX_DATABASE_USERNAME
Pas de valeur par défaut : à définir manuellement
Spécifie le nom d'utilisateur de l'utilisateur de la base de données Microsoft SQL Server. Si BUILD_TEST_DBS est activé et que des images Microsoft SQL Server sont générées, cette variable requise par le processus de compilation d'image doit être définie.
MSSQL_DB_TWX_DATABASE_SCHEMA
Pas de valeur par défaut : à définir manuellement
Spécifie le schéma de base de données de la base de données Microsoft SQL Server. Si BUILD_TEST_DBS est activé et que des images Microsoft SQL Server sont générées, cette variable requise par le processus de compilation d'image doit être définie.
MSSQL_DB_SA_PASSWORD
Pas de valeur par défaut : à définir manuellement
Spécifie le mot de passe de l'utilisateur "sa" Microsoft SQL Server. Si BUILD_TEST_DBS est activé et que des images Microsoft SQL Server sont générées, cette variable requise par le processus de compilation d'image doit être définie.
Assurez-vous que le mot de passe comporte au moins huit caractères et qu'il contient des caractères de trois des quatre types suivants : majuscules, minuscules, chiffres en base 10 et symboles.
PLATFORM_AZURESQL_VERSION
8.4.1-b2126
Spécifie la version de la plateforme ThingWorx Azure SQL à générer. Obligatoire uniquement pour la génération de conteneurs Azure SQL.
PLATFORM_AZURESQL_ARCHIVE
Thingworx-Platform-Azuresql-8.4.1-b2126.zip
Spécifie le nom de fichier du fichier .zip ThingWorx Azure SQL Server dans le dossier staging. Obligatoire uniquement pour la génération de conteneurs Azure SQL.
AZURESQL_SQLDRIVER_VERSION
6.0.8112.200
Spécifie la version à installer du pilote Microsoft JDBC pour Azure SQL. Obligatoire uniquement pour la génération de conteneurs Azure SQL.
Les variables suivantes sont uniquement à définir si les valeurs par défaut ne correspondent pas aux fichiers du dossier staging :
Nom de variable
Par défaut
Commentaire
TOMCAT_ARCHIVE
tomcat-9.0.21.tar.gz
Spécifie le nom du fichier d'archive Tomcat dans le dossier staging.
JAVA_ARCHIVE
jdk-8u172-linux-x64.tar.gz
Spécifie le nom du fichier d'archive Java dans le dossier staging.
SQLDRIVER_ARCHIVE
sqljdbc_6.0.8112.200_enu.tar.gz
Spécifie le nom du pilote Microsoft JDBC pour le fichier d'archive SQL Server d'archive dans le dossier staging. Obligatoire uniquement pour la génération de conteneurs Microsoft SQL Server.
TEMPLATE_PROCESSOR_ARCHIVE
template-processor-12.0.0.10-application.tar.gz
Spécifie le nom du fichier d'archive template-processor dans le dossier staging.
Mise en staging des fichiers
Vous devez placer les fichiers requis pour la génération des images Docker dans le dossier staging inclus dans cette version. Le dossier staging doit déjà contenir un fichier platform-settings.json de base.
Pour faciliter le staging, Apache Tomcat et la version configurée du pilote Microsoft JDBC pour SQL Server (version par défaut) peuvent être téléchargées automatiquement.
Pour effectuer le téléchargement automatique :
1. Assurez-vous que vous avez correctement défini les variables du fichier build.env.
2. Exécutez la commande ./build.sh stage.
S'il n'y a pas eu d'erreurs, les fichiers ont normalement été placés dans le dossier staging et ils doivent correspondre à vos paramètres build.env.
Vous pouvez récupérer les autres fichiers requis en procédant comme suit :
Java
Vous devez télécharger Java manuellement auprès d'Oracle en raison de l'obligation d'accepter les termes de la licence d'Oracle. Le produit est disponible sur la page des téléchargements du Java SE Development Kit 8. Après avoir accepté le contrat de licence sur la page, téléchargez le fichier Linux x64 tar.gz (par exemple : jdk-8u172-linux-x64.tar.gz).
Enregistrez ce fichier dans le dossier staging et assurez-vous que les variables JAVA_VERSION et JAVA_ARCHIVE du fichier build.env sont correctes.
Fichiers d'archive ThingWorx Platform
Téléchargez les fichiers d'archive ThingWorx Platform depuis la même section ThingWorx Platform du site des téléchargements de logiciels de PTC que celle contenant cette version des Dockerfiles. Assurez-vous d'utiliser la même version de ThingWorx que pour le jeu de Dockerfiles, car il peut y avoir des différences. Exemple de fichier : Thingworx-Platform-H2-8.4.1-b2126.zip
Enregistrez ce fichier dans le dossier staging et assurez-vous que les variables PLATFORM_TYPE_VERSION et PLATFORM_TYPE_ARCHIVE du fichier build.env sont correctes.
Fichier d'archive du processeur de modèles
L'outil template-processor est inclus par défaut dans le dossier staging et il est normalement automatiquement intégré dans les builds Docker. Assurez-vous que les paramètres TEMPLATE_PROCESSOR_VERSION et TEMPLATE_PROCESSOR_ARCHIVE du fichier build.env sont corrects.
Fichier d'archive Tomcat
Si vous n'avez pas pu télécharger automatiquement Tomcat, procédez au téléchargement directement auprès d'Apache depuis le site des téléchargements de logiciels Tomcat 9. Choisissez de télécharger la version Core et sélectionnez tar.gz. Exemple de fichier : apache-tomcat-9.0.21.tar.gz
Enregistrez ce fichier dans le dossier staging et assurez-vous que les variables TOMCAT_VERSION et TOMCAT_ARCHIVE du fichier build.env sont correctes. Notez que le nom par défaut attendu est tomcat-version.tar.gz, sauf modification dans build.env.
Pilote Microsoft JDBC pour SQL Server
Si vous n'avez pas pu télécharger automatiquement le pilote Microsoft JDBC, ou que vous souhaitez utiliser une autre version, procédez au téléchargement directement auprès de Microsoft sur Microsoft JDBC Driver 6.0 pour SQL Server. Sélectionnez la version Anglais (dans la mesure où la structure de fichiers diffère avec les autres langues). Sur la page suivante, sélectionnez sqljdbc_version_enu.tar.gz, puis cliquez sur Suivant.
Enregistrez ce fichier dans le dossier staging et assurez-vous que les variables SQLDRIVER_VERSION et SQLDRIVER_ARCHIVE du fichier build.env sont correctes.
Pilote Microsoft JDBC pour Azure SQL
Si vous n'avez pas pu télécharger automatiquement le pilote Microsoft JDBC, ou que vous souhaitez utiliser une autre version, procédez au téléchargement directement auprès de Microsoft sur Microsoft JDBC Driver 6.0 pour SQL Server. Sélectionnez la version Anglais (dans la mesure où la structure de fichiers diffère avec les autres langues). Sur la page suivante, sélectionnez sqljdbc_version_enu.tar.gz, puis cliquez sur Suivant.
Enregistrez ce fichier dans le dossier staging et assurez-vous que les variables AZURE_SQLDRIVER_VERSION et AZURE_SQLDRIVER_ARCHIVE du fichier build.env sont correctes.