Platform Environment Variables
The environment variables listed on this page are supported by the Ignition platform and work on a wide variety of operating systems including Docker, Linux, Windows, and macOS. You can add environment variables to automate certain processes, access sensitive information, and even support more convenient solutions when customizing system setups.
Environment Variables​
The available environment variables can either accept explicit values or load the target values from a file.
Some of the variable descriptions below make use of a #
character. In these cases, you can specify the same variables multiple times by replacing the #
character with a new number for each use.
GATEWAY_NETWORK_0_HOST=1.2.3.4
GATEWAY_NETWORK_0_PORT=8088
GATEWAY_NETWORK_0_DESCRIPTION="For tag server"
GATEWAY_NETWORK_1_HOST=5.6.7.8
GATEWAY_NETWORK_1_PORT=8089
GATEWAY_NETWORK_1_DESCRIPTION="For edge server"
Environment Variable | Description |
---|---|
TZ | Set to a valid TZ database name, like America/Los_Angeles . See List of tzdata Entries for complete selection. |
ACCEPT_IGNITION_EULA | Set to Y to accept the Ignition EULA automatically (If using Docker, refer to the Docker Licensing section for more details). |
GATEWAY_ADMIN_USERNAME | Defaults to admin when not specified, used to set value for initial Gateway auto-commissioning. |
GATEWAY_ADMIN_PASSWORD | Password value or salted hash to be used for initial Gateway auto-commissioning. |
GATEWAY_HTTP_PORT | Defaults to 8088 when not specified, used to override the HTTP port used by the Gateway. |
GATEWAY_HTTPS_PORT | Defaults to 8043 when not specified, used to override the HTTPS port used by the Gateway. |
GATEWAY_GAN_PORT | Defaults to 8060 when not specified, used to override the Gateway Network port used by the Gateway. |
IGNITION_EDITION | Set to standard , edge , or maker , used to set value for initial Gateway auto-commissioning. |
IGNITION_LICENSE_KEY | 8-character license key (XXXX-XXXX) for leased activation (e.g. Maker Edition), used to set value for initial Gateway auto-commissioning You can activate multiple 8-character license keys at the same time in a comma-delimited format, such as: ABCD-1234,DCBA-4321,WXYZ-6789,ZYXW-9876 . Changes to this variable will update the leased activation license configuration after initial commissioning. |
IGNITION_ACTIVATION_TOKEN | Activation token for the license key. You can activate multiple 8-character license keys at the same time in a comma-delimited format, such as: abcdef1234...789,bcdef2345...890 .Changes to this variable will update the leased activation license configuration after initial commissioning. |
GATEWAY_NETWORK_#_HOST | Hostname (or IP) for Outgoing GAN Connection Definition for #. |
GATEWAY_NETWORK_#_PORT | Port Number to use for connection #, defaults to 8060 when not specified. |
GATEWAY_NETWORK_#_PINGRATE | Ping Rate (ms) for connection #, defaults to 1000 when not specified. |
GATEWAY_NETWORK_#_PINGMAXMISSED | Number of missed pings allowed for connection #, defaults to 30 when not specified. |
GATEWAY_NETWORK_#_ENABLED | Set true or false to mark connection # enabled or disabled |
GATEWAY_NETWORK_#_ENABLESSL | Set true or false to enable SSL on connection #, defaults to true . |
GATEWAY_NETWORK_#_WEBSOCKETTIMEOUT | Timeout (ms) for web socket #, defaults to 10000 when not specified. |
EAM_SETUP_INSTALLSELECTION | Set Agent or Controller to define the EAM target config, defaults to Agent when not specified. |
EAM_AGENT_CONTROLLERSERVERNAME | Gateway Name (not hostname) of EAM Controller to bind to. |
EAM_AGENT_SENDSTATSINTERVAL | Interval (seconds) to send statistics to the EAM Controller, defaults to 5 when not specified. |
EAM_CONTROLLER_ARCHIVEPATH | Filesystem path to store EAM Archives (Gateway backups, etc), defaults to data/eam_archive when not specified. |
EAM_CONTROLLER_DATASOURCE | The database connection name to use for recording agent history. |
EAM_CONTROLLER_ARCHIVELOCATION | When set to MANUAL, the path set in EAM_CONTROLLER_ARCHIVEPATH will be used. Defaults to AUTOMATIC , if omitted. |
EAM_CONTROLLER_LOWDISKTHRESHOLDMB | Value is in megabytes. Errors will be reported in this Gateway when the disk used for archiving drops below this value. |
GATEWAY_MODULES_ENABLED | A comma-delimited set of built-in and third party fully-qualified module identifiers that whitelist modules and restrict them from being uninstalled. Note: When using Docker, this feature will help with container re-creation events where you want to ensure only a subset of modules remain enabled. The third party modules listed here are automatically loaded and non-quarantined on Gateway launch. |
DISABLE_QUICKSTART | Boolean to decide whether or not the "Enable Quick Start" prompt will appear when new Gateways are created. A setting of true will skip the Quick Start prompt. |
GATEWAY_NETWORK_#_DESCRIPTION | Documentation about how the connection is used. |
GATEWAY_NETWORK_ENABLED | Set to false to disable using the Gateway Network. |
GATEWAY_NETWORK_REQUIRESSL | If true , only connections that use SSL to encrypt traffic will be allowed. This setting only applies to incoming connections. |
GATEWAY_NETWORK_REQUIRETWOWAYAUTH | Enforces two-way SSL authentication. If true , you will need to install the remote machine's certificate on this machine and manually approve this machine's certificate on the remote machine. |
GATEWAY_NETWORK_SENDTHREADS | The maximum number of threads that will be used to upload messages. Applies to outgoing connections. |
GATEWAY_NETWORK_RECEIVETHREADS | The maximum number of threads that will be used to download messages. Applies to outgoing connections. |
GATEWAY_NETWORK_RECEIVEMAX | Number of received messages that can be held until they are processed by the local system. When this capacity is exceeded, new messages are rejected and errors are reported to the remote Gateway. Applies to incoming connections. |
GATEWAY_NETWORK_ALLOWINCOMING | If false , only outward connections defined on this Gateway will be allowed. |
GATEWAY_NETWORK_SECURITYPOLICY | Dictates what connections are allowed. If set to ApprovedOnly , incoming connections must be approved from the Incoming Connections page. Other options include Unrestricted and SpecifiedList . |
GATEWAY_NETWORK_WHITELIST | If the connection policy is set to SpecifiedList , this is the comma-separated list of Gateway names which will be allowed to connect. |
GATEWAY_NETWORK_ALLOWEDPROXYHOPS | The maximum number of proxy hops that can be used to reach the destination Gateway. Any number less than or equal to zero is equivalent to no proxy hops allowed. |
GATEWAY_NETWORK_WEBSOCKETSESSIONIDLETIMEOUT | The maximum number of milliseconds a websocket is allowed to remain idle before it is closed. This value should always be set higher than outgoing connection ping rates to avoid premature connection termination. |
ACCEPT_MODULE_LICENSES | A comma-delimited set of fully-qualified module identifiers to allow automated license acceptance of third party modules, which will reduce restart interruptions on Gateway startup or when upgrading from the Gateway Web UI and avoid quarantine states. The use of this environment variable implies acceptance of the respective EULAs, similar to ACCEPT_IGNITION_EULA . |
ACCEPT_MODULE_CERTS | A comma-delimited list of fully-qualified module identifiers to allow automated certificate acceptance of third party modules, which will reduce restart interruptions on Gateway startup or when upgrading from the Gateway Web UI and avoid quarantine states. |
GATEWAY_NETWORK_ALLOWJAVASERIALIZATION | If true , allows Java serialization so that 8.1 Gateways can communicate with 8.3 Gateways. This setting is disabled by default on new installs, but enabled for users upgrading from 8.1. Note: It is recommended to use this option only as a temporary solution while all 8.1 Gateways are being upgraded. Once all Gateways are updated, set to false . |
IGNITION_ROOT_KEY_PASSWORD_FILE | The path to a file in a folder with the root key password. |
IGNITION_ROOT_KEY_PASSWORD | The custom key to start the Gateway. |
Specifying Environment Variables​
Docker​
You can define environment variables (ENV) in a Dockerfile, which applies them for any container built from it. Use the following format to specify an environment variable:
ENV: env_variable_name=value
Windows​
To add environment variables on Windows:
- Open the Control Panel and navigate to System and Security > System.
- Click Advanced system settings.
- Click Environment Variables...
- Then, select New or Edit as needed under the relevant Variables section to enter Variable names and values.
- Click OK to add the environment variable.
MacOS​
Setting environment variables on MacOS is as simple as opening the terminal window and adding the environment variable using the following syntax: VARIABLE="A String Value" export VARIABLE
IP_ADDRESS=121.0.0.1 export IP_ADDRESS
Linux​
For Linux users, environment variables are placed in different files for different intended purposes. System-Wide environment variables are configured in files such as /etc/environment
, and are persistent across restarts for all users. The following steps detail how to add System-Wide environment variables:
Open the terminal.
Enter
sudo -H vi /etc/environment
.Enter the required password.
Add the environment variable in the opened file, following
NAME="value"
formatting. In this example, we will be adding the IGNITION_EDITION environment variable.IGNITION_EDITION=8.1.48
Save and close the file.
Log out and back in to apply your saved changes.