Starting the Query Docker container by retrieving parameters from Vault

Learn about how to start the Query Docker container by specifying CONFIGURE_MODE=Vault.

Mandatory environment variables

These are the mandatory environment variables that you must specify to configure the Query Docker container to retrieve additional parameters from Vault.

Environment variable name Description Comments
TENANT The name of the group that contains your set of environments. For example, MyCompany. Container environment variable. This can be specified in the values.yaml configuration file under common.tenant.
ENVIRONMENT The name of the environment. For example, Non-production. Container environment variable. This can be specified in the values.yaml configuration file under common.environmentName.
ENVTYPE The environment type. Accepted values are auth and live. Container environment variable. This can be specified in the values.yaml configuration file under common.environmentType.
VAULT_TOKEN The Vault token to use to connect to Vault and request certification from Vault PKI. Container environment variable. This can be specified in the values.yaml configuration file under common.vaultToken.
VAULT_URL The Vault URL to use to connect to Vault and request certification from Vault PKI. Container environment variable. This can be specified in the values.yaml configuration file under common.vaultUrl.
CONFIGURE_MODE The configure mode.
Accepted values are:
  • Vault for Vault configuration.
  • EnvVariables for environment variables configuration.
Set this value to Vault to use Vault configuration, and the configurations present within this reference.
Container environment variable. This can be specified in the values.yaml configuration file under common.configureMode.

Optional environment variables

These are the optional environment variables that you can specify to configure the Query Docker container.

All parameters that you specify as container environment variables take precedence over the values that are stored in Vault.

Environment variable name Description Comments
EXPOSE_METRICS Specify if you want to enable metrics for the environment.
Accepted values are:
  • true for enabled.
  • false for disabled.
The default value is set to true.
Container environment variable. This can be specified in the values.yaml configuration file under metrics.enabled.

Mandatory Vault configuration variables

These are the mandatory Vault key values that you must specify within Vault to configure the Query Docker container to use the Vault configuration mode.

Vault path Description Reference Environment Variable
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/elasticSearchHost Specify an elasticSearchHost value. ELASTICSEARCH_HOST
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/zookeeperHost Specify a value if you want to set a zookeeperHost value, instead of using the default value. ZOOKEEPER_HOST
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/sessionKeyEncrypt
HCL Commerce Version 9.1.12.0 or laterNote: Now mandatory, this value was optional prior to HCL Commerce 9.1.12.0.
The encrypted session key, encrypted with the key encryption key. The Session key was created when you or an administrator loaded the HCL Commerce database schema.
Important: You must specify your own Merchant key and key encryption key values for the security of your HCL Commerce installation. Do not use the default values contained within the provided sample configuration files and documentation examples.
SESSION_KEY_ENCRYPT

Optional Vault configuration variables

These are the optional Vault key values that you can specify within Vault to configure the Query Docker container when used with the Vault configuration mode.

Vault path Description Reference Environment Variable
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/domainName Specify the internal service domain name. If the deployed environment is on a special namespace on Kubernetes, then the domain name should be .svc.cluster.local.

If no value is specified, then the default, default.svc.cluster.local, is used.

DOMAIN_NAME
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/elasticSearchPort Specify a value if you want to set an elasticSearchPort value, instead of using the default value. ELASTICSEARCH_PORT
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/elasticSearchScheme Specify a value if you want to set an elasticSearchScheme value, instead of using the default value. ELASTICSEARCH_SCHEME
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/zookeeperPort Specify a value if you want to set a zookeeperPort value, instead of using the default value.

The default value is 2181.

ZOOKEEPER_PORT
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/zookeeperScheme Specify a value if you want to set a zookeeperScheme value, instead of using the default value.

The default value is http.

ZOOKEEPER_SCHEME
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/txHost The Transaction server host name.

The default value is app.

TX_HOST
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/txPort The Transaction server port number.

The default value is 5443.

TX_PORT
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/nlpEnableLanguageCode The language code for the Natural Language Processing (NLP) feature. Specify a comma separated list of language codes for natural language processing. For example, en,es. In this example, NLP is enabled for both English and Spanish.
  • HCL Commerce Version 9.1.11.0 or laterFor HCL Commerce 9.1.11.0 and greater, there is no default value. You must specify a value if you want to enable NLP. If you do not set this value, or leave it empty, NLP remains disabled.
  • For HCL Commerce 9.1.0.0 through 9.1.10.0, the default value is set to en, which enables the NLP feature for the English language.
NLP_ENABLE_LANGUAGE_CODE
Deprecated feature${VAULT_URL}/${TENANT}/${ENVIRONMENT}/nlpLemmatizationFeature
Note: Deprecated as of HCL Commerce 9.1.11.1. This value must remain as false.
Specify whether or not to enable the lemmatization feature for natural language processing.
Accepted values are:
  • true to enable the lemmatization feature.
  • false to disable the lemmatization feature.
By default, this is set to false.
NLP_LEMMATIZATION_FEATURE
Deprecated feature${VAULT_URL}/${TENANT}/${ENVIRONMENT}/enableFeatureNlp
Note: Removed in HCL Commerce 9.1.2.0 and greater.
Enable natural language processing. This is hard coded to false for data-query. ENABLE_FEATURE_NLP
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/auth/toolingOrigin or ${VAULT_URL}/${TENANT}/${ENVIRONMENT}/auth/toolingBaseUrl The Auth Tooling web URL.
The sample format is:
  • https://www.${TENANT}${ENVIRONMENT}auth.{{ include "external.domain" $ }}
  • https://www.${TENANT}${ENVIRONMENT}auth.{{ include "external.domain" $ }}/tooling
Note:
  • If toolingOrigin is not specified and toolingBaseUrl is specified, then the tooling origin value will be derived from the tooling base URL (all characters before the first slash).
  • Optional for a SoFy environment Helm Chart.
  • TOOLING_ORIGIN
  • TOOLING_BASE_URL
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/redisPasswordEncrypt The encrypted Redis password. REDIS_PASSWORD_ENCRYPT
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/traceSpecification/search-query-app If you want to change the trace specification for the Transaction server, specify a value. TRACE_SPEC
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/healthCenterEnable/search-query-app Specify a value if you want to enable Health Center.
Accepted values are:
  • true for enabling Health Center.
  • false for not enabling Heather Center.
The default value is false.
HEALTH_CENTER_ENABLED
${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/threadMonitorEnable/search-query-app Specify a value if you want to enable Thread Monitor.
Accepted values are:
  • true for enabling Thread Monitor.
  • false for not enabling Thread Monitor.
The default value is false.
THREAD_MONITOR_ENABLED
HCL Commerce Version 9.1.6.0 or later${VAULT_URL}/${TENANT}/${ENVIRONMENT}/enableJsonLogging Enable JSON logging.
Accepted values are
  • true to enable JSON logging.
  • false to disable JSON logging.

The default value is false.

ENABLE_JSON_LOGGING