Configuración de Microsoft SQL Server
Los ficheros de ejemplo de Docker Compose para Microsoft SQL Server se incluyen en Dockerfiles que se pueden descargar de la parte ThingWorx Platform del sitio Descargas de software de PTC.
* 
La memoria inicial se define en 2 GB y la memoria máxima, en 4 GB. Los montajes de volumen son relativos a los ficheros docker-compose. Esta es la ubicación donde los registros y los ficheros de configuración se almacenan para activar la persistencia en los contenedores.
Se pueden añadir las siguientes opciones a la sección environment del servicio de plataforma para controlar la configuración de esta instancia:
Nombres de variable
Valores
Valores por defecto
Comentarios
DATABASE_HOST
Cadena
mssql
Permite especificar el nombre de host, el nombre de servicio o la dirección IP del host de la base de datos SQL Server.
DATABASE_PORT
Número
1433
Permite especificar el número de puerto para la base de datos SQL Server.
DATABASE_ADMIN_USERNAME
Cadena
SA
Permite especificar el nombre de usuario administrador para la base de datos SQL Server. El valor por defecto proporcionado se debe utilizar para crear el contenedor correctamente.
DATABASE_ADMIN_PASSWORD
Cadena
PASSWORD
Permite especificar la contraseña del administrador para la base de datos SQL Server. El valor de DATABASE_ADMIN_PASSWORD y SA_PASSWORD debe ser el mismo.
DB_TYPE
Cadena
mssql
Permite especificar el nombre del proveedor de persistencia por defecto. Nota: Esta variable no se soporta en ThingWorx 9.3.0 y versiones posteriores.
SA_PASSWORD
Cadena
PASSWORD
Permite especificar la contraseña de SA. El valor de DATABASE_ADMIN_PASSWORD y SA_PASSWORD debe ser el mismo.
ENABLE_HTTP
true/false
true
Permite activar el conector HTTP en Tomcat para el tráfico no seguro al contenedor.
ENABLE_HTTPS
true/false
false
Permite activar el conector HTTPS en Tomcat para el tráfico seguro al contenedor. También se debe proporcionar un almacén de claves y definir SSL_KEYSTORE_PASSWORD.
SSL_KEYSTORE_PASSWORD
Cadena
PASSWORD
Permite especificar la contraseña del almacén de claves que se utiliza para la comunicación SSL en Tomcat.
SSL_KEYSTORE_BASE_PATH
Cadena
/ThingworxPlatform
Permite especificar la ruta al almacén de claves SSL de Tomcat. Si el almacén de claves se guarda en una ubicación del contenedor que no sea la carpeta por defecto, se debe definir esta variable.
SSL_KEYSTORE_FILENAME
Cadena
keystore.jks
Permite especificar el nombre de fichero para el almacén de claves SSL de Tomcat. Si el almacén de claves tiene un nombre de fichero distinto del valor por defecto, se debe definir esta variable.
TOMCAT_SSL_PROTOCOLS
Cadena
TLSv1.2
Permite especificar el protocolo SSL de Tomcat. Defina esta opción si desea sustituir los protocolos SSL aceptados en Tomcat.
SERVER_HTTP_PORT
Cadena
8080
Permite especificar el puerto que Tomcat supervisa para la comunicación HTTP. Se debe tener en cuenta que si se modifica este puerto, se deben cambiar los puertos expuestos en el fichero Compose.
SERVER_HTTPS_PORT
Cadena
8443
Permite especificar el puerto que Tomcat supervisa para la comunicación HTTPS. Se debe tener en cuenta que si se modifica este puerto, se deben cambiar los puertos expuestos en el fichero Compose.
DOCKER_DEBUG
true/false
false
Permite alternar la opción de registro de información de depuración cuando se inicia el contenedor. Se debe tener en cuenta que esta opción puede incluir información confidencial.
TWX_DATABASE_USERNAME
Cadena
""
Permite especificar el usuario de ThingWorx que se creará para la base de datos. Esta variable se debe definir manualmente antes de iniciar ThingWorx Platform.
TWX_DATABASE_PASSWORD
Cadena
""
Permite especificar la contraseña del usuario de ThingWorx para la base de datos. Esta variable se debe definir manualmente antes de iniciar ThingWorx Platform.
TWX_DATABASE_SCHEMA
Cadena
""
Permite especificar el nombre del esquema para la instancia de ThingWorx. Esta variable se debe definir manualmente antes de iniciar ThingWorx Platform.
LS_USERNAME
Cadena
""
Permite especificar el nombre de usuario de la conexión de PTC para obtener la licencia de ThingWorx.
LS_PASSWORD
Cadena
""
Permite especificar la contraseña de conexión de PTC para obtener la licencia de ThingWorx.
ENABLE_BACKUP
true/false
false
Permite alternar la opción de copias de seguridad.
ENABLE_LOGGING
true/false
true
Permite alternar la opción de registro.
ENCRYPT_CREDENTIALS
true/false
false
Permite alternar la opción para cifrar contraseñas de bases de datos y licencias en el fichero platform-settings.json.
THINGWORX_INITIAL_ADMIN_PASSWORD
Cadena
""
Permite definir la contraseña inicial del usuario administrador en ThingWorx. Esta variable se debe definir manualmente antes de iniciar ThingWorx Platform. Esta contraseña se puede cambiar después de que ThingWorx se haya iniciado correctamente.
THINGWORX_INITIAL_METRICS_USER_PASSWORD
Cadena
""
Permite definir la contraseña inicial para el objeto MetricsUser en ThingWorx. Esta es una variable opcional. Se debe definir manualmente antes de iniciar ThingWorx Platform. Esta contraseña se puede cambiar después de que ThingWorx se haya iniciado correctamente.
EXTPKG_IMPORT_POLICY_ENABLED
true/false
false
Permite controlar la activación y desactivación globales de la importación de paquetes de extensiones mediante el cargador de paquetes de extensiones.
EXTPKG_IMPORT_POLICY_ALLOW_JARRES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen recursos de Jar (Java). Si se define en false y la extensión contiene ficheros jar, la importación fallará.
EXTPKG_IMPORT_POLICY_ALLOW_JSRES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen recursos de Javascript. Si se define en false y la extensión contiene ficheros javascript, la importación fallará.
EXTPKG_IMPORT_POLICY_ALLOW_CSSRES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen recursos de CSS. Si se define en false y la extensión contiene ficheros css, la importación fallará.
EXTPKG_IMPORT_POLICY_ALLOW_JSONRES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen recursos de JSON. Si se define en false y la extensión contiene ficheros json, la importación fallará.
EXTPKG_IMPORT_POLICY_ALLOW_WEBAPPRES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen recursos de WebApps. Si se define en false y la extensión contiene ficheros de recursos WebApp, la importación fallará.
EXTPKG_IMPORT_POLICY_ALLOW_ENTITIES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen definiciones de entidad no extensible. Si se define en false y la extensión contiene definiciones de entidades no extensibles distintas de la entidad de paquete de extensiones, la importación fallará.
EXTPKG_IMPORT_POLICY_ALLOW_EXTENTITIES
true/false
false
Permite controlar los permisos de importación de paquetes de extensiones que contienen definiciones de entidad extensible. Si se define en false y la extensión contiene definiciones de entidades extensibles distintas de la entidad de paquete de extensiones la importación fallará.
ENABLE_CONSOLE_OUTPUT
true/false
false
Permite activar el registro de consola.
ENABLE_CLUSTERED_MODE
true/false
false
Se define en true para activar el modo agrupado.
HTTP_PORT
Número
Null
El puerto que se utiliza para la comunicación HTTP debe coincidir con SERVER_HTTP_PORT. Se utiliza para la detección de servicios.
HTTP_SERVICE_NAME
Cadena
thingworx-http
Nombre del servicio HTTP para ThingWorx Platform. Se utiliza para la detección de servicios.
HTTPS_PORT
Número
Null
El puerto utilizado para la comunicación HTTPS debe coincidir con SERVER_HTTPS_PORT. Se utiliza para la detección de servicios.
HTTPS_SERVICE_NAME
Cadena
thingworx-https
Nombre del servicio HTTPS para ThingWorx Patform. Se utiliza para la detección de servicios.
TOMCAT_SSL_CIPHERS
Cadena
“”
Lista opcional de conjuntos de cifrado separados por comas. Permite limitar las conexiones HTTPS a solo los cifrados enumerados. Si no se define, se utilizan los cifrados JVM por defecto.
TOMCAT_COMPRESSION
on/off/force
off
Permite activar o desactivar la compresión de Tomcat. El conector puede utilizar la compresión HTTP/1.1 GZIP para ahorrar ancho de banda del servidor. Entre los valores aceptables se incluyen off (desactivar la compresión), on (permitir la compresión, lo que hace que los datos de texto se compriman) y force (forzar la compresión en todos los casos).
* 
Si el conector admite la función sendfile, (por ejemplo, el conector NIO), el uso de sendfile tendrá prioridad sobre la compresión.
TOMCAT_COMPRESSION_MIN_SIZE
Número
2048
Permite especificar la cantidad mínima de datos antes de comprimir la salida cuando TOMCAT_COMPRESSION es on.
TOMCAT_USE_SEND_FILE
true/false
true
Permite activar o desactivar la capacidad sendfile. El uso de sendfile desactivará cualquier compresión que Tomcat pueda haber realizado en la respuesta.
COORDINATOR_HOSTS
Cadena
“”
Lista separada por comas de extremos de ZooKeeper. Cada extremo es _host_:_port_.
IGNITE_ZK_CONNECTION
Cadena
“”
Host y puerto de ZooKeeper utilizados para la detección de servicios.
ZK_SSL_ENABLED
true/false
false
Permite activar SSL para ZooKeeper.
ZK_SSL_KEYSTORE_LOCATION
Cadena
/certs/zookeeper.p12
Ruta al keystore de ZooKeeper.
ZK_SSL_KEYSTORE_PASSWORD
Cadena
“”
Contraseña del KeyStore de ZooKeeper.
ZK_SSL_TRUSTSTORE_LOCATION
Cadena
“”
Ruta del TrustStore de ZooKeeper.
ZK_SSL_TRUSTSTORE_PASSWORD
Cadena
“”
Contraseña del KeyStore de ZooKeeper.
CATALINA_OPTS
Cadena
“”
Opciones de Java Runtime pasadas a Tomcat.
DATABASE_ADMIN_SCHEMA
Cadena
postgres
Nombre del esquema por defecto en el servidor de la base de datos.
TWX_KEYSTORE_PASSWORD
Cadena
“”
La contraseña que se debe utilizar para definir la contraseña del KeyStore de ThingWorx. Si no se define, ThingWorx crea una contraseña aleatoria en el primer arranque.
Defina esta contraseña para asegurarse de que se utilice una contraseña específica para las configuraciones de alta disponibilidad y para restaurar los datos y volúmenes antiguos.
SECRET_CX_APP_KEY
Cadena
“”
Clave de aplicación que el servidor de conexión utilizará para conectarse a ThingWorx
SECRET_PROVISIONING_APP_KEY
Cadena
“”
Clave de aplicación utilizada para el abastecimiento de ThingWorx en el primer inicio.
EXTPKG_IMPORT_POLICY_HA_COMPATIBILITY_LEVEL
WARN/DENY
AVISAR
Configuración de la directiva de importación de extensiones que controla si se deben permitir o denegar extensiones compatibles con la alta disponibilidad. Las opciones son WARN o DENY.
Si se define en WARN, las extensiones que no son conformes con la alta disponibilidad se importarán con un aviso que se escribirá en el registro de la aplicación.
Si se define en DENY, solo se podrán importar las extensiones que sean conformes con la alta disponibilidad.
ENABLE_PROPERTY_TRANSFORM
true/false
false
Se define en true para activar la transformación de propiedades.
PROPERTY_TRANSFORM_RABBITMQ_HOST
“”
localhost
Host de RabbitMQ para utilizarlo con la transformación de propiedades.
PROPERTY_TRANSFORM_RABBITMQ_PORT
Cadena
5672
Puerto de RabbitMQ para utilizarlo con la transformación de propiedades.
PROPERTY_TRANSFORM_RABBITMQ_USERNAME
Cadena
admin
Nombre de usuario de RabbitMQ para utilizarlo con la transformación de propiedades.
PROPERTY_TRANSFORM_RABBITMQ_PASSWORD
Cadena
“”
Contraseña de RabbitMQ para utilizarla con la transformación de propiedades.
PROPERTY_TRANSFORM_RABBITMQ_VHOST
Cadena
/
Vhost de RabbitMQ para utilizarlo con la transformación de propiedades.
IGNITE_SSL_ACTIVE
true/false
false
Permite activar SSL para Ignite.
IGNITE_KEYSTORE_FILE_PATH
Cadena
/certs/ignite.pfx
Ruta al KeyStore de Ignite.
IGNITE_KEYSTORE_PASSWORD
Cadena
“”
Contraseña del KeyStore de Ignite.
ZK_SASL_ENABLED
true/false
false
Permite activar la autenticación SASL en ZooKeeper.
ZK_SASL_SECURITY_AUTH_LOGIN_CONFIG
Cadena
/tmp1/jaas.conf
Ruta al fichero de configuración de JAAS.
ZK_SASL_SECURITY_KRB5_CONF
Cadena
/tmp1/krb5.conf
Ruta al fichero de configuración de Kerberos.
AKKA_SSL_ENABLED
true/false
true
Permite activar/desactivar la comunicación tls Akka.
AKKA_KEYSTORE
Cadena
/certs/keystore.jks
La ruta al keystore Akka se puede almacenar en el volumen de certificados. Por ejemplo, /certs/keystore.jks.
AKKA_TRUSTSTORE
Cadena
/certs/truststore.jks
La ruta al truststore de Akka se puede almacenar en el volumen de certificados. Por ejemplo, /certs/truststore.jks.
AKKA_KEYSTORE_PASSWORD
Cadena
No se ha definido ningún valor por defecto.
Contraseña de AKKA_KEYSTORE.
AKKA_TRUSTSTORE_PASSWORD
Cadena
No se ha definido ningún valor por defecto.
Contraseña de AKKA_TRUSTSTORE.
También se puede cambiar la ruta del volumen a una ubicación específica del sitio. La ruta del volumen utiliza la siguiente sintaxis:
"./ruta_a_montaje_local:/ruta_a_montaje_de_contenedor"
Por ejemplo:
"/opt/ThingworxPlatform:/ThingworxPlatform"
* 
Al actualizar la ruta del volumen, se debe cambiar solamente el montaje local, ya que los puntos de montaje del contenedor interno no cambian nunca.
La imagen de Docker de MS SQL Server se proporciona para facilitar las pruebas. No se debe utilizar la imagen de Docker de MS SQL Server que se proporciona para producción. Como práctica recomendada, el usuario debe configurar su propio entorno de MS SQL Server para producción.
Para conectarse a una base de datos de Microsoft SQL Server que existe fuera de Docker, se debe quitar el servicio mssql del fichero Compose y añadir las siguientes variables a las variables del entorno de platform:
DATABASE_ADMIN_USERNAME
DATABASE_ADMIN_PASSWORD
Se trata de cuentas de administrador de la base de datos de Microsoft SQL Server autorizadas para crear un usuario, una base de datos o un esquema que el contenedor de ThingWorx carga en el primer inicio. Consulte Uso de una base de datos externa de Microsoft SQL Server para Docker de ThingWorx para ver un fichero Compose de ejemplo con la configuración de la plataforma para utilizar una base de datos externa de Microsoft SQL Server.
Si se utiliza una base de datos externa, se puede instalar manualmente el esquema de ThingWorx y no proporcionar credenciales de administrador para el contenedor de Docker de ThingWorx. Para ello, se deben definir las variables DATABASE_HOST, DATABASE_PORT, TWX_DATABASE_USERNAME, TWX_DATABASE_PASSWORDy TWX_DATABASE_SCHEMA según corresponda.
¿Fue esto útil?