Установка LUNA PASS#
Данный раздел описывает установку и использование Docker Compose для развертывания LUNA PASS, а также установку зависимостей LUNA PASS API.
Ниже приведены команды для AlmaLinux.
Установка Docker и Docker Compose#
Для корректной работы сервиса необходимо настроить SSL и NGINX, подробнее см. "Запуск примеров LUNA PASS UI".
Установка Docker описана в официальной документации.
Актуальная инструкция по установке представлена ниже.
Установите дополнительные зависимости:
yum install -y yum-utils
Добавьте репозиторий Docker:
yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo
Установите последнюю версию Docker:
yum install docker-ce docker-ce-cli containerd.io
Проверьте корректность установки:
docker -v
Скачайте 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
Установите права доступа (разрешить выполнение):
chmod +x /usr/local/bin/docker-compose
Запустите Docker:
systemctl start docker
systemctl enable docker
Проверьте статус Docker:
systemctl status docker
Авторизация в registry#
Получите образы сервисов из dockerhub.visionlabs.ru (VisionLabs registry) для запуска. Перед этим авторизуйтесь — получите логин и пароль у специалистов компании VisionLabs, затем введите полученные данные для авторизации:
docker login dockerhub.visionlabs.ru --username <username> --password <password>
Подготовка и распаковка дистрибутива#
Дистрибутив представляет собой архив вида «luna_pass_1.12.5».
Перед процессом установки поместите файлы дистрибутива в директорию на сервере. Например, в директорию /root. В данной директории не должно быть других файлов дистрибутива кроме целевых, используемых для установки конечного продукта.
Выполните следующие действия.
1․ Переключитесь в режим суперпользователя root:
sudo su
2․ Создайте директорию для распаковки дистрибутива:
mkdir -p /var/lib/luna-pass
3․ Переместите дистрибутив в созданную директорию:
mv /root/luna-pass-1.12.5 /var/lib/luna-pass
4․ Установите архиватор unzip, если он не установлен:
yum install unzip
5․ Перейдите в директорию с дистрибутивом:
cd /var/lib/luna-pass
6․ Распакуйте файлы:
unzip luna-pass-1.12.5.zip
7․ Создайте символьную ссылку. Ссылка указывает, что именно текущая версия дистрибутива используется для запуска:
ln -s luna-pass-1.12.5 current
Если отсутствует ссылка /var/lib/luna-pass/current, скрипты запуска не смогут определить расположение бинарных файлов текущего релиза, а также будет невозможна дальнейшая установка.
Запуск LUNA PASS#
Сформируйте файлы license.conf
, lunapassvideo.config.toml
, lunapassvideo.task.py
, lunapassapi.config.toml
, docker-compose.yml
из примеров лежащих в поставке. Внесите актуальные данные и настройки в файлы перед запуском в docker. Данные для внесения см. в разделе "Настройка сервиса".
Режимы работы сетей в Docker#
Сетевая Docker подсистема подключается с помощью драйверов:
- host — сетевой драйвер для автономных контейнеров. Удаляет сетевую изоляцию между контейнером и Docker хостом;
- container:
- bridge — сетевой драйвер по умолчанию. Используется, когда приложения запускаются в автономных контейнерах, которые должны взаимодействовать между собой.
Запуск LUNA PASS в режиме host#
1․ Перейдите в директорию Docker:
cd /var/lib/luna-pass/current/example-docker/host
Убедитесь, что в файле license.conf указаны корректные данные лицензии.
2․ Создайте файлы настроек используемых сервисов (например, из example-файлов, лежащих в каждом сервисе) для последующего монтирования в docker. Для запуска сервиса введите команду:
docker-compose up -d
3․ Проверьте статус всех запущенных Docker контейнеров.
docker-compose ps
Запуск LUNA PASS в режиме container#
1․ Перейдите в директорию Docker:
cd /var/lib/luna-pass/current/example-docker/container
Убедитесь, что в файле license.conf указаны корректные данные лицензии.
2․ Создайте файлы настроек используемых сервисов (напрмиер, из example-файлов, лежащих в каждом сервисе) для последующего монтирования в docker. Для запуска сервиса введите команду:
docker-compose up -d
3․ Проверьте статус всех запущенных Docker контейнеров.
docker-compose ps
Быстрый запуск#
После того, как будет распакован дистрибутив и установлена лицензия, запустите LUNA PASS с помощью команды:
./start_selfsigned.sh {host}:{port}
Укажите нужные хост и порт, на котором планируете открывать интерфейс.
Скрипт start_selfsigned.sh
:
- генерирует самоподписной сертификат для nginx и помещает его в нужный каталог (см. п.3 раздела "Запуск примеров jslib");
- генерирует необходимые для работы директории (./LOGS, ./videos) и выставляет им нужные права;
- запускает сервисы на следующих адресах:
- https://{host}:{port} — lunapassui;
- https://{host}:{port}/admin — панель администратора lunapassui. Логин/пароль по умолчанию — admin/admin;
- http://{host}:8321 — lunapassapi. Порт задаётся переменной LUNA_PASS_API_PORT в файле .env (см. "Настройка сервиса);
- http://{host}:8320 — интерфейс filebrowser, где можно посмотреть, например, сохранённые видео и кадры сессий. Логин/пароль по умолчанию — admin/admin.