Skip to content

Installing LUNA PASS#

This section describes how to install and use Docker Compose to deploy LUNA PASS as well as installation LUNA PASS API dependencies.

The commands below are for CentOS.

Installing Docker and Docker Compose#

Configure SSL and NGINX for correct service operation. For more details see "Running LUNA PASS UI examples".

Docker and Docker Compose are not included in the LUNA PASS distribution. Use the official instructions for installation Docker Engine and Docker Compose.

The current installation instructions are presented below.

Install the yum-utils package:

yum install -y yum-utils

Set up the stable repository:

yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

Install the latest version of Docker Engine and containerd:

yum install docker-ce docker-ce-cli containerd.io

Check that the installation was done correctly:

docker -v

Download the current stable release of Docker Compose:

curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Set permissions (allow execution):

chmod +x /usr/local/bin/docker-compose

Start Docker:

systemctl start docker
systemctl enable docker

Check Docker status:

systemctl status docker

Authorization in registry#

Get service samples from dockerhub.visionlabs.ru (VisionLabs registry) to start them. Log in before doing this—get login and password from VisionLabs specialists, then enter the received data for authorization:

docker login dockerhub.visionlabs.ru --username <username> --password <password>

Preparing and unpacking the distribution#

The distribution package is an archive of the form "luna_pass_1.11.4".

Before the installation process, place the distribution files in a directory on the server. For example, in the /root directory. There should be no other distribution files in this directory other than the target files used to install the final product.

Perform the following steps.

1․ Switch to root superuser mode:

sudo su

2․ Create a directory to unzip the distribution:

mkdir -p /var/lib/luna-pass

3․ Move the distribution to the directory you created:

mv /root/luna-pass-1.11.4 /var/lib/luna-pass

4․ Install the unzip archiver if it is not installed:

yum install unzip

5․ Change to the distribution directory:

cd /var/lib/luna-pass

6․ Unzip the files:

unzip luna-pass-1.11.4.zip

7․ Create a symbolic link. The link indicates that it is the current version of the distribution that is used for launching:

ln -s luna-pass-1.11.4 current

If the /var/lib/luna-pass/current link is missing, the startup scripts will not be able to locate the binary files of the current release, and further installation will not be possible.

Starting LUNA PASS#

Generate license.conf, lunapassvideo.config.toml, lunapassvideo.task.py, lunapassapi. config.toml, docker-compose.yml files from the examples included in the distribution. Update the files with the latest data and settings before running it in docker. See the data to be entered in the "Service Settings" section.

Networking modes in Docker#

The Docker networking subsystem is connected using drivers:

  • host - network driver for standalone containers. Removes network isolation between the container and the Docker host;
  • container:
  • bridge - default network driver. Used when applications run in standalone containers that need to communicate with each other.

Starting LUNA PASS in host mode#

1․ Change to the Docker directory:

cd /var/lib/luna-pass/current/example-docker/host

Make sure that the license.conf file contains the correct license data.

2․ Create configuration files for the services you are using (for example, from the example files lying in each service) for later mounting in docker. To start the service, enter the command:

docker-compose up -d

3․ Check the status of all running Docker containers.

docker-compose ps

Starting LUNA PASS in container mode#

1․ Change to the Docker directory:

cd /var/lib/luna-pass/current/example-docker/container

Make sure that the license.conf file contains the correct license data.

2․ Create configuration files for the services to be used (for example, from the example files in each service) to be mounted in docker. To start the service, enter the command:

docker-compose up -d

3․ Check the status of all running Docker containers.

docker-compose ps

Quick Start#

After you unpack the distribution and configure the license, run LUNA PASS with the command:

./start_selfsigned.sh {host}:{port}

Specify the host and port on which you plan to open the interface.

Script start_selfsigned.sh:

  • generates a self-signed certificate for nginx and places it in the desired directory (see point 3 of the "Running jslib examples" section);
  • generates the directories necessary for operation (./LOGS, ./videos) and sets the necessary permissions for them;
  • starts services at the following addresses:
  • https://{host}:{port}—lunapassui;
  • https://{host}:{port}/admin—lunapassui admin panel. Default login/password—admin/admin;
  • http://{host}:8321—lunapassapi. The LUNA_PASS_API_PORT variable in the .env file is responsible for the port (see the "Service configuration" section);
  • http://{host}:8320—filebrowser interface, where you can view, for example, saved videos and session frames. Default login/password—admin/admin.