Configuración de PostgreSQL
PostgreSQL
Se incluyen ficheros de ejemplo de Docker Compose para PostgreSQL en Dockerfiles, que se pueden descargar de la sección 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
postgresql
Permite especificar el nombre de host, el nombre de servicio o la dirección IP del host de la base de datos PostgreSQL.
DATABASE_PORT
Número
5432
Permite especificar el número de puerto para la base de datos PostgreSQL.
DATABASE_ADMIN_USERNAME
Cadena
postgres
Permite especificar el nombre de usuario administrador para la base de datos PostgreSQL.
DATABASE_ADMIN_PASSWORD
Cadena
PASSWORD
Permite especificar la contraseña del administrador para la base de datos PostgreSQL.
DB_TYPE
Cadena
postgres
Permite especificar el nombre del proveedor de persistencia por defecto. Nota: Esta variable no se soporta en ThingWorx 9.3.0 y versiones posteriores.
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. Se debe tener en cuenta que para PostgreSQL, TWX_DATABASE_USERNAME:
Debe coincidir TWX_DATABASE_SCHEMA debido a una limitación de la implementación existente.
No debe ser postgres
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. Se debe tener en cuenta que para PostgreSQL, TWX_DATABASE_USERNAME debe coincidir con TWX_DATABASE_SCHEMA debido a una limitación de la implementación existente.
TABLESPACE_LOCATION
Cadena
/ThingworxPostgresqlStorage
Permite especificar la ubicación del espacio de tabla en el servidor de bases de datos.
IS_RDS
sí/no
no
Permite alternar la opción de conexión a una base de datos PostgreSQL de RDS.
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 utilizado 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 Platform. 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.
POSTGRES_USER
Cadena
""
Permite especificar el nombre de usuario administrador para la base de datos PostgreSQL.
POSTGRES_PASSWORD
Cadena
""
Permite especificar la contraseña del administrador para la base de datos PostgreSQL.
POSTGRES_DB
Cadena
""
Permite especificar el nombre de la base de datos PostgreSQL.
En Docker Hub se pueden encontrar variables adicionales para PostgreSQL y sus detalles.
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 PostgreSQL se proporciona para facilitar las pruebas. No utilice la imagen de Docker de PostgreSQL que se proporciona para producción. Como práctica recomendada, configure un entorno de PostgreSQL propio para producción.
Para conectarse a una base de datos PostgreSQL incluida fuera de Docker, se puede quitar el servicio postgresql 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 en la base de datos PostgreSQL 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 PostgreSQL para Docker de ThingWorx para ver un fichero Compose de ejemplo con la configuración de plataforma para utilizar una base de datos externa.
Si se utiliza una base de datos externa, se puede instalar manualmente el esquema de ThingWorx de la forma habitual 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?