Skip to main content Skip to footer

Local configuration

Environment variables

Note: Environment variables always have highest priority meaning if you have an environment variable that addresses a specific Node setting but something else is configured in one of the local configuration files ie. appsettings.json, the value from the environment variable will be taken.

How to set?

Docker

Environment variables can be set in the shell where you start the Crosser node, in the docker-compose.yml file or in a separate file referenced from docker-compose.yml, e.g edgenode.env.

Windows

On Windows you need to set the environment variables from PowerShell, before starting the Crosser Node service:

$env:some_variable = some_value

Available environment variables

Security

See Node Installation for information on when to set each setting.

Variable Value Description
SecurityConfiguration__Registration__Key Key from cloud.crosser.io The global registration key created at cloud.crosser.io
SecurityConfiguration__Registration__Name Unique Node name A unique name to use when registering the Node. Not needed if auto-generated names are configured in Crosser Cloud.

SecurityConfiguration__Registration__Name

   
SecurityConfiguration__Credentials__NodeId

ID from cloud.crosser.io

ID to use when registering a single Node. (set by the installer on Windows)
SecurityConfiguration__Credentials__AccessKey Key from cloud.crosser.io Key to use when registering a single Node. (set by the installer on Windows)
EdgeNodeConfiguration__RestApi__AllowKillHostFromApi false or (true) If true the host can be terminated through the node API or web UI.
EdgeNodeConfiguration__RestApi__AllowKillProcessFromApi

false or (true)

If true flows can be terminated through the node API or web UI.
EdgeNodeConfiguration__RestApi__Allow
KillRemoteSessionProcessFromApi

false or (true)

If true remote sessions can be terminated through the node API or web UI.

General

Variable

Default

Description

EdgeNodeConfiguration__LogLevel

Information

The level to use when logging to the local log file (Verbose, Debug, Information, Warning, Error, Fatal).

EdgeNodeConfiguration__ReportStatusIntervalInSeconds

10

The interval in seconds to report Node status to cloud.crosser.io.

EndpointsConfiguration__RemoteSessionTransport

Automatic

When setting up a remote session the node will try with a websocket connection. If that fails it will try a regular HTTP (long polling) connection. Set to HTTP to disable websocket attempts.

Proxy settings: Nodes version 2.6+

Variable

Value

Description

http_proxy

user:pw@IPorHost:port

Connectivity details for HTTP proxy. User and password only needed if required by the proxy server.

https_proxy

user:pw@IPorHost:port

Connectivity details for HTTPS proxy. User and password only needed if required by the proxy server.

Example edgenode.env with proxy settings:

# Proxy Section
>https_proxy=user:pw@192.168.102.10:1234

Proxy settings: Nodes version < 2.6

Variable

Value

Description

https_proxy

IPorHost:port

IP/host and port to the HTTPS proxy.

https_user

user

User to connect with (if required by the proxy server).

https_password

password

Password to connect with (if required by the proxy server).

https_proxy_certificate

certificate.cer

Name of certificate to use (located in data/certificates on the node).

http_proxy

IPorHost:port

IP/host and port to the HTTP proxy.

http_user

user

User to connect with (if required by the proxy server).

http_password

password

Password to connect with (if required by the proxy server).

Example edgenode.env with proxy settings:

# Proxy Section
https_user=user
https_password=password
https_proxy_certificate=certificate.cer

Local configuration files

Besides environment variables, the Node can be configured using the below local configuration files. Note that these configuration files require you to have access to the root-folder of the Node. All configuration files are located in the 'data' sub-folder in the root-folder of the Crosser Node. Configuration files might evolve over time with Node updates.

All changes in configuration files will only be applied once the Node is restarted.

appsettings.json

This file controls Node settings for the actual application itself like the log-level, communication-interval to the Control Center, the path to your Python environment (only relevant for Windows setups) and more.

Usually you don't have to do any modifications unless you want to use Python on Windows installations.

credentials.json

This file holds the Node Name, NodeID, organization and hashed credentials for the Node. This file is created once the Node connects to the Control Center for the first time. Don't do any adjustments to this file manually as you most probably end up in a non-functional state.

endpoints.json

This file holds settings for the Node's exposable endpoints: MQTT and HTTP, as well as the base-URL which you might want to adjust in case you have an on-premise installation of the Control Center. This is also the place where you can specify your proxy settings in setups where you break-up the SSL connection between the Node and the Control Center.

httpconfiguration.json

As the name suggest you control the exposable HTTP endpoint with this file. Detailed explanations on what you can control here can be found in the next chapter.

mqttconfiguration.json

As the name suggest you control the exposable MQTT Broker with this file. Detailed explanations on how to control there can be found in the next chapter.