Skip to main content

Configuration

Atek stores its core configuration in ~/.atek/config.json. The file includes the following user-configurable values:

  • domain The domain which Atek is hosting under. Defaults to localhost. If you are hosting on a server with a DNS entry, set domain to that value.
  • port The port which Atek's host environment should use. Defaults to 80.
  • coreServices An array of services which should be loaded during startup. The values of the array items include:
    • sourceUrl The URL of the service's code package. Required.
    • id The ID the service should use. Auto-generated by default.
    • desiredVersion A semver range pinning the version to install. Defaults to latest.
    • config A key-value map of environment variables to pass to the service.
  • defaultMainService The URL of the default "main service" to install for every user. The main service provides Atek's home UI.

There are also some values which are saved to config by the active process and should not be modified:

  • serverDbId The ID of the server's primary ADB database.
  • systemAuthTokens An array of authentication tokens used to make calls to Atek's APIs. Used by the command-line and tests suite.

Most of the time, you should only ever need to set domain and possibly port, and possibly neither.

Here is an example config file with the defaults included:

{  "domain": "localhost",  "port": 80,  "coreServices": [    {"id": "core.hyper-daemon", "sourceUrl": "https://github.com/atek-cloud/hyper-daemon"},    {"id": "core.adb",          "sourceUrl": "https://github.com/atek-cloud/adb"}  ],  "defaultMainService": "https://github.com/atek-cloud/lonestar",  "serverDbId": /* a 64-character hex string */,  "systemAuthTokens": [ /* a hex string */ ]}