Creating Environment List Files (env.list)
  • 27 Jul 2022
  • 4 Minutes to read
  • Dark
    Light

Creating Environment List Files (env.list)

  • Dark
    Light

Overview

Containers are configured with an environment list i.e. env.list file. 

Environment lists are populated with environment variables mirroring settings found in a VM's settings.xml to configure a container's database connection, HTTPS, etc. By adding/configuring specific variables, containers possess the same functionalities as a VM.

The following article lists and explains both required environment variables as well as optional variables.



Required Environment Variables

The following table lists the base minimum required environment variables for all containers. The variable marked with an asterisk (*) is only required for Azure containers. View more Azure Environment Variables on the Deploying Containers on Azure article. 

Environment VariableFunction
DECISIONS_DATABASECONNECTSTRINGConfigures the container's connection to its database.
DECISIONS_DATABASETYPEConfigures what type of database the container uses.
DECISIONS_FILESTORAGELOCATIONConfigures location data volumes are mapped to allow containers to preserve persistent data.

Since containers are Linux-based, paths for the file storage will be case-sensitive. 

*DECISIONS_PORTALBASEURLConfigures the URL of the container consisting of the domain name and its port.



Example Docker Environment List

Open a text editor like Notepad or Notepad++. Copy the template with the appropriate variables for the container's database, review the reference table, then replace the brackets and their values with the necessary values.

Save the file as a .list file extension e.g. "containerenv.list".

---MSSQL CONTAINER ONLY---
DECISIONS_DATABASECONNECTSTRING=Data Source=;Initial Catalog=;Integrated Security=false;User ID=[SAUSERNAME];Password=[SAPASSWORD];

---POSTGRES CONTAINER ONLY---
DECISIONS_DATABASECONNECTSTRING=Host=[IPv4];Database=[CONTAINERDATABASE];Port=5432;Integrated Security=False;Username=postgres;Password=[ADMINPASSWORD];

---ADD AFTER THE DATABASE CONNECTION VARIABLE---
DECISIONS_FILESTORAGELOCATION=/FileStorage
DECISIONS_PORTALBASEURL=http://localhost:<port> 
DECISIONS_DATABASETYPE=[MSSQL OR POSTGRES]
LANG=[LANGUAGE.TZ]
LANGUAGE=[LANGUAGES]
LC_ALL=[LANGUAGE.TZ]
TZ=[TIMEZONE]
Environment VariableFunctionExample
User ID=[SAUSERNAME]Enter the name of the system administrator aka SA account in MSSQL.ExampleAccountName
Password=[SAPASSWORD]Enter the password for the MSSQL SA account referenced in the User ID variable.examplepassword
DECISIONS_DATABASECONNECTSTRING=
Host=[IPv4]
Enter the IPv4 address of the machine hosting the Postgres container. xxx.xx.xxx.x
Database=[CONTAINERDATABASE]Enter the desired name of the container's database.
Users may enter a preexisting database or create a new one during container creation by entering a new database name.
New databases increase deployment time considerably.
ExamplePostgresContainer
Password=[ADMINPASSWORD]Enter the admin password for PG 4 Admin.examplepassword
DECISIONS_PORTALBASEURL=
http://localhost:<port>  
The URL used to access the Decisions portal for the container outside of the host machine. If the domain name is linked directly to the container, it can be used in place for localhost. For the port number, this will be the internal port on the container that must be mapped to an external port. The port
http://:xxx.xx.xxx.x:8088
DECISIONS_DATABASETYPE=
[MSSQL OR POSTGRES]
Enter either MSSQL or POSTGRES depending on the container's database.POSTGRES
LANG=[LANGUAGE.TZ]Enter the setting for all categories not directly set by LC_ALLen_US.UTF-8
LANGUAGE=[LANGUAGES]Enter the supported language(s) for the container's messages.en_US:en:fr
LC_ALL=[LANGUAGE.TZ]Enter the settings to override LANG and LANGUAGE settingsen_US.UTF-8
TZ=[TIMEZONE]Enter the timezone the container operates within. By default, this is in UTC.US/Eastern, Asia/Kolkata, America/New_York

The following example depicts an env.list for Postgres container creation on Docker.



Customizing the Environment File

Additional environment variables may populate an env.list to configure optional functionalities such as HTTPS. 

Add the following optional environment variables after the connection anywhere in the env.list. 

Between the variable name and its value, enter an equals (=) sign e.g. "DECISIONS_SERVERTYPE=Repository".

Server Type Variable

To change the container's server type to, for example, a Repository server, enter the following variable into the env.list:

Environment VariableFunctionExample
DECISIONS_SERVERTYPEDetermines the container's server type.

Without this variable, containers install as a standard Application server.
Repository containers: Repository
MT Control containers: Hosted
MT Tenant containers: Tenant

Refer to MT Tenant Variables for all other necessary variables for this container.


MT Tenant Variables

To create an MT Tenant container, enter the following variables into the env.list:

Environment VariableFunctionExample
DECISIONS_CONTROLINSTANCEURLPrompts for the URL of the multi-tenant control instance.http://xxx.xx.xxx.x:8080
DECISIONS_SERVERTYPEDetermines the container's server type.

By default, containers install as a standard Application server.
Tenant
DECISIONS_INSTANCEAUTHENTICATIONKEYPrompts for the instance Authorization Key.[15 random characters (a-Z, 0-9)]
DECISIONS_INSTANCENAMEPrompts for the name of the container's instance.Instance1


Clustering Variables

The following optional environment variables are required to set up a clustered environment.

Environment VariableFunctionExample
DECISIONS_CLUSTERING_TURNONCLUSTERINGToggles whether the containers support clustering.True
DECISIONS_CLUSTERING_REDISBASEURLPrompts for the Redis URL of the Redis container.localhost:6379


Recommended Optional AWS Variables

The following optional environment variables are recommended for an AWS container.

Environment VariableFunctionExample
DECISIONS_LOG_AWS_REGIONRequired for Cloudwatch logging. Enter the address of the Cloudwatch region.aws-region: "us-east--1"


Recommended Optional Azure Variables

The following optional environment variables are recommended for an Azure container.

Environment VariableFunctionExample
DECISIONS_LOG_AZURE_WORKSPACE_IDRequired for log analytics. Enter the Workspace ID of the Log Analytics workspace.--
DECISIONS_LOG_AZURE_AUTHENTICATION_IDRequired for log analytics. Enter the Authentication ID of the Log Analytics workspace.--


Licensing Variables

Refer to the Self-Service Licensing article for further information on licensing.

The container must have an internet connection for licensing.

Environment VariableFunctionExample
DECISIONS_LICENSECOMPANYIDEnter the license ID for the container's instance.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
DECISIONS_LICENSECOMPANYNAMEEnter the company name attached to the license's ID.Decisions
DECISIONS_LICENSECONTACTEMAILEnter a contact email for the provided license example@email.com
DECISIONS_ENVIRONMENTNAMEEnter the name of the container to license. This can be specified during container creation or afterward. TestingEnvironment
DECISIONS_LICENSETYPEEnter the license type of the container.
This will likely be either 'Enterprise Production' or 'EnterpriseNonProduction'
EnterpriseProduction


HTTPS Variables

Enter the following environment variables after the licensing variables in the env.list.

Ensure the HTTPS port i.e. port 443 is open and that the correct certificate is saved onto the machine.

Local install must manually edit the container's URL in-browser by adding "https://" before the domain name and ":433" after the domain name e.g. "http://:localhost:443".

The browser may display a warning against this redirect. If prompted, select the Advanced button then select Proceed to continue.

Environment VariableFunctionExample
DECISIONS_HTTPSCERTIFICATEPATHEnter file path where the container's certificate resides. This searches C:\Docker by default. Enter the certificate name at the end./cert/decisions.pfx
DECISIONS_ENABLEHTTPSToggles enabling HTTPS on the container. True


SSO Variable

To enable SSO for a container, enter the following variable into the env.list:

Environment VariableFunctionExample
DECISIONS_ENABLESINGLESIGNONToggles single sign-on (SSO) for the container.
True


SMTP Variables

Refer to the Email and SMTP in Decisions article for further information.

Besides the bypass variable, each variable's value is dependent on the SMTP email provider. Gmail, Office365, and Outlook are supported.

Enter their respective values in the variables.

Environment VariableFunctionExample
DECISIONS_MAIL_BYPASSSMTPSERVERToggles if sent mail respects SMTP settings.

It is best to keep this as False else a validation error will occur.
False
DECISIONS_MAIL_SMTPSERVER_
SERVERADDRESS
Enter domain name of the SMTP service.smtp-relay.gmail.com
DECISIONS_MAIL_SMTPSERVER_
PORT
Enter the port number of the SMTP server.587
DECISIONS_MAIL_SMTPSERVER_
REQUIREAUTHETICATION
Toggles if authentication is necessary to login the SMTP server.example@email.com
DECISIONS_MAIL_SMTPSERVER_
USERNAME
Enter the username of the SMTP server.exampleaccount
DECISIONS_MAIL_SMTPSERVER_
PASSWORD
Enter the password for the specified user.password123
DECISIONS_MAIL_SMTPSERVER_
USESSL
Toggles secure socket layer (SSL) encryption on SMTP mail.False







Was this article helpful?