Installation

For proper installation you need to clone project from git.

Surroundings

The service can be installed on Windows 10 and CentOS 8 (not tested on other system versions).

Required predefined dependencies:

  • Python of version 3.12 is required.

  • It is strongly recommended to create virtual surroundings for python dependencies installation.

  • Python setuptools module can be installed via pip (pip install setuptools).

  • LUNA SDK version 5.10.0, environment variable FSDK_ROOT with path to LUNA SDK. Environment variable LD_LIBRARY_PATH must to contain a path to a folder with luna sdk shared library.

Dependencies installation

After surroundings installation launch pip install with “-r requirements.txt” parameter.

pip install -r requirements.txt

Configuration

After dependencies installation configuration file should be set. File is placed in “./luna_api/configs/config.conf”.

Database creation

For Luna-Image-Store usage you should create bucket from config.conf. To do this, launch lis_bucket_create.py script (note that this script doesn’t check if bucket already exists or not):

python base_scripts/lis_bucket_create.py --config=configs/config.conf
  • Influx monitoring

For sending monitoring you should create database from config.conf. To do this, launch monitoring_db_create.py script (note that this script doesn’t check if database already exists or not):

python base_scripts/monitoring_db_create.py --config=configs/config.conf

First launch and testing

If all previous actions are executed successfully, server is ready to work. To start server please launch run.py script. While start you can add arguments: server message port and path to config file if it is not in default location. By default 5000 port is used. Example:

./run.py --port=5001 --config=./configs/devconfig.conf

After server is started, testing is recommended. To perform testing execute command

python -m unittest tests.unittests_main

All tests should perform successfully.


Note

In case of running the application in a container, you also have the option to specify environment variables using command line arguments, as shown in the example below. Please be warned that Bash may not accept variable names containing a dot (‘.’) symbol, so quoting is required.

docker run -e "VL_SETTINGS.LUNA_CONFIGURATOR.LUNA_CONFIGURATOR_USER=your_username"
-e "VL_SETTINGS.LUNA_CONFIGURATOR.LUNA_CONFIGURATOR_PASS=your_password" luna-api