Docker Environment Variables
Last updated
Last updated
Variable | Single Application Mode | Multi Application Mode |
---|---|---|
ENDPOINTS_BASE_URL
With trailing slash, for examplehttps://endpoints.offer-ready.com/
mandatory
mandatory
ENDPOINTS_JDBC_URL
Points to a PostgreSQL database. For example jdbc:postgresql://localhost/endpoints?user=postgres&password=postgres. At this point in time PostgreSQL 10+ is supported.
mandatory
mandatory
ENDPOINTS_PUBLISHED_APPLICATION_DIRECTORY
Optional. There is usually no need to set this. A directory where published applications are stored. Only set this variable if OpenEndpoints is run outside Docker, where the checked-out applications might survive an application restart.
n/a
optional - do not use with Docker!
ENDPOINTS_SERVICE_PORTAL_ENVIRONMENT_DISPLAY_NAME
For example "Production Environment", for the login screen of the Service Portal.
n/a
mandatory
ENDPOINTS_SINGLE_APPLICATION_MODE_TIMEZONE_ID
A string timezone ID such as Europe/Berlin
. See the column “TZ database name” in the table at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for a full list. The string “UTC” may also be used.
This is used by the “On-Demand Incrementing Number” feature, which allocates unique values within, for example, a month. Exactly at what point in time the month begins/ends is influenced by this timezone. The environment variable is mandatory if the “On-Demand Incrementing Number” feature is used within the application.
This variable is only needed if the application is in single-application mode. If the application is in multi-application mode then this information is taken from the application_config
database table which is used to store which applications are available in multi-application mode.
mandatory
n/a
ENDPOINTS_CHECK_HASH
Default is "true".
If this is set to "false", no hash checking is done. This is useful when Endpoints is not world-visible, for example part of a multi-image Kubernetes Hub, etc.
optional
optional
ENDPOINTS_DISPLAY_EXPECTED_HASH
For debugging, set this to "true" in order to display the expected value of security hashes.
optional
optional
ENDPOINTS_XSLT_DEBUG_LOG
Default false. For debugging, display the input and output to the parameter transformation XSLT in the logfile, and also bodies produced by XSLT which will be sent to HTTP servers.
optional
optional
ENDPOINTS_AWS_CLOUDWATCH_METRICS_INSTANCE
Optional. If set, CloudWatch metrics are sent, and the Instance dimension of those metrics are this value. For example, if there are multiple Endpoints installations within the same AWS account, setting this environment variable to different values for each of them allows the metrics to be differentiated.
If this environment variable is not set, not CloudWatch metrics are sent, for example the application is deployed to somewhere other than AWS so no CloudWatch is available.
optional
optional
JAVA_OPTIONS
Things such as Java heap size. By default, Java takes care of assigning the right amount of memory for the Docker container. Useful values (multiple values separated by a space)
-verbose:gc This causes logs to be printed each time a GC occurs, which show the amount of memory used and reclaimed. Useful for determining if the instance needs to be given more memory, or can be given less memory in order to save money.
-Dwicket.configuration=development This causes exceptions to be output to the browser, which can be useful for debugging in a situation where there is no access to the Docker logfile. This is not recommended for Prod deployment as this can expose internal information which might be useful to attackers.
-XX:ActiveProcessorCount=2, see here: https://www.databasesandlife.com/java-docker-aws-ecs-multicore/
optional
optional