Container Properties

This page contains the list of the parameters configurable at container level for the various Everyware Cloud components.

Common Parameters

Database connection parameters

These parameters control the database connection's configuration. They are available for all the containers with the exception of the Events Broker.

Environment VariableDefault ValueDescription
DB_HOSTec-mariadbhost where the database can be found
DB_PORT3306port where the database can be found
DB_NAMEkapuadbname of the database
DB_SCHEMA_NAMEkapuadbname of the database schema
DB_SCHEMA_UPDATEtruewhether or not the database schema should be updated
DB_USERNAME<empty>username to connect to the database
DB_PASSWORD<empty>password to connect to the database
DB_SSLfalseeither to use or not TLS/SSL to connect to the database service
DB_SSL_PROTOCOLSTLSv1.2TLS/SSL protocol version(s) to be used to connect to the database service
DB_CONNECTION_SCHEMEjdbc:mariadbconnection scheme used to connect to the database. Should not be changed
DB_RESOLVERMariaDBresolver used for the database connection. Should not be changed
DB_DRIVERorg.mariadb.jdbc.Driverdriver used for the database connection. Should not be changed

Datastore connection parameters

These parameters control the Datastore connection's configuration. They are available for all the containers with the exception of the Events Broker.

Environment VariableDefault ValueDescription
STORAGE_DISABLEfalseDisable connection to the Elasticsearch engine
STORAGE_NODESec-elasticsearch:9200Comma separated list of nodes (host:port) of the Elasticsearch instance where requests will be submitted
STORAGE_SSLfalseWhether to use or not TLS/SSL to connect to the storage service
STORAGE_PREFIX<empty>Prefix for the indices in Elasticsearch
STORAGE_SHARDS1Number of shards for the indices in Elasticsearch
STORAGE_REPLICAS0Number of replicas for the indices in Elasticsearch
STORAGE_WINDOWweekTime bucket assigned to data indices
STORAGE_CLIENTorg.eclipse.kapua.service. datastore.client.rest. RestDatastoreClientClient implementation to use. Should not be changed.

Logstore connection parameters

These parameters control the Logstore connection's configuration. They are available for all the containers with the exception of the Events Broker.

Environment VariableDefault ValueDescription
LOGSTORE_DISABLEfalseDisable connection to the Elasticsearch engine
LOGSTORE_NODESec-elasticsearch:9200Comma separated list of nodes (host:port) of the Elasticsearch instance where requests will be submitted
LOGSTORE_SSLfalseWhether to use or not TLS/SSL to connect to the storage service
LOGSTORE_PREFIX<empty>Prefix for the indices in Elasticsearch
LOGSTORE_SHARDS1Number of shards for the indices in Elasticsearch
LOGSTORE_REPLICAS0Number of replicas for the indices in Elasticsearch
LOGSTORE_WINDOWweekTime bucket assigned to data indices
LOGSTORE_CLIENTorg.eclipse.kapua.service. datastore.client.rest. RestDatastoreClientClient implementation to use. Should not be changed.

Events broker connection parameters

These parameters control the events broker connection's configuration. They are available for all the containers with the exception of the Events Broker itself.

Environment VariableDefault ValueDescription
EVENTS_BROKER_HOSTec-events-brokerhost where the events broker can be found
EVENTS_BROKER_PORT5672port where the events broker can be found
EVENTS_BROKER_USERNAME<empty>username used by the service to connect to the events broker
EVENTS_BROKER_PASSWORD<empty>password used by the service to connect to the events broker

Cache connection parameters

These parameters control the cache connection's configuration. They are available for all the containers with the exception of the Events Broker.

Environment VariableDefault ValueDescription
REDIS_URLredis://redis:6379server address in host:port format (e.g. redis://redis:6379). Use rediss:// protocol for SSL connection
REDIS_PWDnullpassword for the Redis server
REDIS_CLIENT_NAMEnullname of the client for the connection
REDIS_IDLE_CONN_TIMEOUT10000inactivity timeout in milliseconds. Should not be changed
REDIS_CONN_TIMEOUT1000idle connection timeout to the server in milliseconds. Should not be changed
REDIS_TIMEOUT100server response timeout, value in milliseconds. Should not be changed
REDIS_RETRY_ATTEMPTS3number of Redis command retry attempts. Should not be changed
REDIS_RETRY_INTERVAL100time interval between Redis command attempts in milliseconds. Should not be changed
JCACHE_TTL30duration of the entities in the cache in seconds
JCACHE_EXPIRY_POLICYMODIFIEDcache expiry policy. Allowed values are: MODIFIED and TOUCHED. The MODIFIED policy invalidates the entity with both a creation and an update operation, while the TOUCHED one invalidates the entity also with an access operation

Transport connection parameters

These parameters control the internal MQTT connections between the Web Applications and the Message Broker. They are available for all the containers with the exception of the Events Broker and the VPN.

Environment VariableDefault ValueDescription
TRANSPORT_USERNAME<empty>username used by the service to connect to the message broker
TRANSPORT_PASSWORD<empty>password used by the service to connect to the message broker

TLS parameters

These parameters control the TLS configuration of the containers endpoints. They are available for all the containers with the exception of the Events Broker.

Environment VariableDefault ValueDescription
CERTIFICATES_PATHtlscertificate path relative to the JETTY_BASE directory
EC_CRT<empty>certificate used for the SSL/TLS termination
EC_CA<empty>CA chain used for the SSL/TLS termination
EC_KEY<empty>certificate key used for the SSL/TLS termination

REST API, Web Console and Message Broker containers provide also the following environment variables.

Environment VariableDefault ValueDescription
DISABLE_SSLfalseDisable TLS/SSL termination on the container.
KEYSTORE_NAMEec.pkcs12name of the keystore
KEYSTORE_PASSchangeitpassword for the keystore
EC_KEYSTORE<empty>base64 representation of the keystore used for the SSL/TLS termination. When set, EC_CRT, EC_CA and EC_KEY are ignored.
EC_KEY_PASSWORD<empty>password of the keystore

Logging parameters

These parameters control the root log level in container logs. They are available for all the containers with the exception of the Events Broker.

Environment VariableDefault ValueDescription
LOGBACK_LOG_LEVELinfologging level, allowed values are trace, debug, info, warn, error, all and off

Container specific parameters

REST API

These parameters are specific to the REST API container.

Environment VariableDefault ValueDescription
MIN_HEAP256mMinimum size of the JVM Heap
MAX_HEAP1024mMaximum size of the JVM Heap
MAX_METASPACE_SIZE256mMaximum size of the JVM Metaspace
JAVA_ARGS<empty>Extra options to configure the JVM can be specified via this variable.
JAVA_OPTS<empty>Extra options to configure the REST APIs component.
API_CORS_ORIGINS_ALLOWEDComma separated list of CORS origins allowed at the instance level.

Web Console

These are the environment variables available on the Web Console container.

Environment VariableDefault ValueDescription
MIN_HEAP256mMinimum size of the JVM Heap
MAX_HEAP1024mMaximum size of the JVM Heap
MAX_METASPACE_SIZE256mMaximum size of the JVM Metaspace
JAVA_ARGS<empty>Extra options to configure the JVM can be specified via this variable.
JAVA_OPTS<empty>Extra options to configure the Console component.
CIPHER_KEY<changeIt>Secret containing the key to use for the AES cipher (used by the MFA authentication).

The following variables control the Multi Factor Authentication feature of the Web Console.

Environment VariableDefault ValueDescription
MFA_TIME_STEP_SIZE30MFA time step size (in seconds, min > 0).
MFA_WINDOW_SIZE3Number of windows of size timeStepSizeInMillis checked during the MFA validation (min > 0).
MFA_SCRATCH_CODES_NUMBER5Number of MFA scratch codes (min is 0 max is 1000).
MFA_CODE_DIGITS_NUMBER6Number of digits in the generated MFA code (min is 6 max is 8).

The Web Console supports also Single-Sign-On trough three different OpenID Connect providers: Keycloak, AD FS and a generic one. These are the parameters which are common to the three providers:

Environment VariableDefault ValueDescription
CONSOLE_URL<empty>Callback URL used by Keycloak.
CLIENT_SECRET<empty>Secret of the Client ID to use when connecting to the OpenID Connect provider (optional).

These are the parameters controlling the Keycloak connection.

Environment VariableDefault ValueDescription
KEYCLOAK_URL<empty>URL of the Keycloak server.
KEYCLOAK_REALMkapuaRealm used for Keycloak authentication.
KEYCLOAK_CLIENT_IDconsoleClient ID to use when connecting to the Keycloak server.

These are the parameters controlling the AD FS connection.

Environment VariableDefault ValueDescription
ADFS_URL<empty>URL of the AD FS server.
ADFS_CLIENT_ID<empty>Client ID to use when connecting to the AD FS server. (Required if setting ADFS_URL)
ADFS_JWT_ISSUER_ENDPOINT<retrieved via well-known endpoint>AD FS Jwt issuer endpoint suffix. (Optional)
ADFS_JWT_AUDIENCE_PREFIXmicrosoft:identityserver:AD FS Jwt audience prefix. (Optional)
ADFS_OPENID_CONF_WELLKNOWN_PATH/adfs/.well-known/openid-configurationAD FS well-known configuration path suffix. (Optional)
ADFS_OPENID_AUTH_ENDPOINT/adfs/oauth2/authorizeAD FS auth endpoint suffix. (Optional)
ADFS_OPENID_TOKEN_ENDPOINT/adfs/oauth2/tokenAD FS token endpoint suffix. (Optional)
ADFS_OPENID_LOGOUT_ENDPOINT/adfs/oauth2/logoutAD FS logout endpoint suffix. (Optional)
ADFS_OPENID_USER_ID_CUSTOM_CLAIMsubClaim to be extracted from the JWT as user identifier (Optional, if different than 'sub')

These are the parameters controlling the generic OpenID Connect provider connection.

Environment VariableDefault ValueDescription
OPENID_JWT_ISSUER<empty>URL of the OpenID Connect provider.
OPENID_CLIENT_IDconsoleClient ID to use when connecting to the OpenID Connect provider.
JWT_AUDIENCEconsoleJwt Audience to use when connecting to the OpenID Connect provider.
OPENID_AUTH_ENDPOINT<retrieved via well-known endpoint>Auth endpoint of the OpenID Connect provider. (Optional)
OPENID_LOGOUT_ENDPOINT<retrieved via well-known endpoint>Logout endpoint of the OpenID Connect provider. (Optional)
OPENID_TOKEN_ENDPOINT<retrieved via well-known endpoint>Token endpoint of the OpenID Connect provider. (Optional)
OPENID_USERINFO_ENDPOINT<retrieved via well-known endpoint>UserInfo endpoint of the OpenID Connect provider. (Optional)
OPENID_USERNAME_CLAIMpreferred_usernameClaim to be extracted from the JWT as user name (Optional, if different than 'preferred_username')

Message Broker

These are the environment variables specific to the Message Broker container.

Environment VariableDefault ValueDescription
MIN_HEAP768mMinimum size of the JVM Heap
MAX_HEAP2048mMaximum size of the JVM Heap
MAX_METASPACE_SIZE384mMaximum size of the JVM Metaspace
BROKER_IP$(hostname)IP or URL announced by the broker when starting up
CLUSTER_NAMEec-brokerName of the cluster the broker belongs to
AMQ_SERIALIZABLE_PACKAGESorg.eclipse.kapua.*Broker will serialise only classes matching this variable
ACTIVEMQ_OPTS<empty>Extra options to configure the Message Broker component.
CAMEL_DYNAMIC_BLACKLIST
_ENABLED
trueEnable/disable the feature (true is enabled)
CAMEL_DYNAMIC_BLACKLIST
_REFRESH_INTERVAL
300Blacklist configuration reload task execution interval (in seconds)
CAMEL_DYNAMIC_BLACKLIST
_REFRESH_INITIAL_WAIT
30Blacklist configuration reload task initial wait before start
CAMEL_DYNAMIC_BLACKLIST
_BLACKLISTED_NETWORKS
10.0.0.0/8,
172.16.0.0/12,
192.168.0.0/16,
127.0.0.0/8
Comma-separated list of blacklisted networks (and/or ip)
CAMEL_DYNAMIC_BLACKLIST
_WHITELISTED_NETWORKS
<empty>Comma-separated list of whitelisted networks (and/or ip)

VPN Service

These are the environment variables specific to the VPN Server container.

Environment VariableDefault ValueDescription
MIN_HEAP256mMinimum size of the JVM Heap
MAX_HEAP1024mMaximum size of the JVM Heap
MAX_METASPACE_SIZE256mMaximum size of the JVM Metaspace
VPN_SERVER_NAMEec-vpnName of the VPN Server corresponding to the one seeded in the database.
JAVA_ARGS<empty>Extra options to configure the JVM can be specified via this variable.
JAVA_OPTS<empty>Extra options to configure the VPN component.

Events Broker

These are the environment variables specific to the Events Broker container.

Environment VariableDefault ValueDescription
MIN_HEAP512mMinimum size of the JVM Heap
MAX_HEAP2048mMaximum size of the JVM Heap
MAX_METASPACE_SIZE256mMaximum size of the JVM Metaspace
ARTEMIS_USERec-userUsername used to connect to the events broker from the other service.
ARTEMIS_PASSec-passPassword used to connect to the events broker from the other service.
ARTEMIS_CONFIGURATION/opt/artemis/etcPath of the events broker configuration folder. It's possible to mount a new configuration folder and use it to start the broker. This property should not be changed.
JAVA_ARGS<empty>Extra options to configure the JVM can be specified via this variable.