Most aspects of Syncplify.me AFT! can be managed and/or initialized by means of environment variables. This is a "best practice" because environment variables are safe (secured by the operating system), don't require to store values inside the executable's memory, and are compatible and supported by all operating system, in all physical and virtual environments, including containers.
Here's a list of environment variables supported by Syncplify.me AFT!, together with their explanation:
SMAFT_EK: typically initialized by the software installer, this is a random string from which AFT! derives the encryption key to encrypt its own configuration files. It's important to understand that if you need to move an instance of AFT! from one machine to another, you'll also need to make sure both machines have this environment variable set to the exact same string value, otherwise the destination machine won't be able to read/access its configuration, and the software will not work.
SMAFT_BINDTO: this is the IP address AFT!'s HTTP server should bind to upon starting. If you don't specify it, AFT! will bind to 127.0.0.1 by default, and therefore it will be only accessible from localhost.
SMAFT_PORT: this is the TCP port (1-65535) AFT!'s HTTP server will bind to upon starting. If you don't specify it, AFT! will bind to port 44399.
SMAFT_CERT: this is the fully-qualified path to an X.509 certificate bundle file. This variable is optional. If not defined, AFT! will use the default path, which is %COMMON_APP_DATA%\Syncplify.me\AFTv1\certs\server.crt on Windows, or %XDG_DATA_DIRS%/Syncplify.me/AFTv1/certs/server.crt on Linux/POSIX.
SMAFT_KEY: this is the fully-qualified path to an X.509 certificate private key file. This variable is optional. If not defined, AFT! will use the default path, which is %COMMON_APP_DATA%\Syncplify.me\AFTv1\certs\server.key on Windows, or %XDG_DATA_DIRS%/Syncplify.me/AFTv1/certs/server.key on Linux/POSIX.
SMAFT_BODYLIMIT: this is the maximum incoming request size that AFT!'s built-in HTTP server will accept; if not specified, the default value is 32M. This is a string value, composed of a numerical prefix followed by a letter indicating the unit of measurement. Example: 32M means 32 MegaBytes. Allowed post-fix letters are K for KiloBytes, M for MegaBytes, G for GigaBytes, T for TeraBytes, and P for PetaBytes.
SMAFT_RUNNERS: this is the maximum number of jobs/tasks that AFT! will execute concurrently... if you start more than SMAFT_RUNNERS tasks, all tasks exceeding this number will be queued, and executed later when one of the running tasks terminates and frees up system resources. This is an optional setting, and its default value is 32. Please, also be aware of the fact that the free/evaluation edition of AFT! forces this number to be always 1 (one) regardless of what you set in this environment variable.