ExeReport поставляется в формате контейнеризированного приложения, которое может быть запущено как в Docker, так и в кластере Kubernetes.

На данной странице представлена инструкция для инсталляции ПО ExeReport в Docker. По вопросам установки ПО ExeReport в кластере Kubernetes необходимо обращаться на портал технической поддержки.

Параметр

Значение

Процессор

Не менее 4 vCPU.

Частота – не ниже 2,6 ГГц.

Поддерживает работу с 64-разрядными приложениями на аппаратном уровне.

ОЗУ

Минимум 4 GB RAM

Свободное пространство на жестком диске

Объем – не менее 50 Гб.

Примечание: объем необходимого свободного места на жестком диске зависит от количества отчетов, хранящихся в ExeReport, и определяется самостоятельно на основе опытной эксплуатации ПО.

Подготовка к установке

  1. Установка Docker

  2. Для хоста, на котором установлен Docker обязательно должен быть сконфигурирован ip адрес отличный от "127.0.0.1". Данный ip адрес должен быть использован в качестве [host_ip] при выполнении дальнейших пунктов инструкции.

  3. Подготовка сертификатов 

  4. Настройка DNS

  5. Установка Guardant Control Center и Guardant SLK

Установка ExeReport для ОС семейства Linux

Для установки и запуска ExeReport необходимо распаковать архив, содержащий ПО (инсталляционный пакет) и предоставленный Вендором.

В результате у вас появится новый каталог exereport с необходимыми для запуска файлами.

Затем необходимо отредактировать файл docker-compose.yaml, расположенный в корневой папке каталога:

  • заменить по тексту файла параметр [host_ip] на ip адрес хоста, на котором инсталлирован Docker;
  • заменить по тексту файла параметр [license_server_ip] на ip адрес хоста, на котором установлен сервер лицензирования Guardant Control Center.

После необходимо скопировать в каталог /exereport /crt сгенерированные ранее сертификаты и отредактировать файл docker-compose.yaml: заменить по тексту файла "mycompany.local" на имя домена, для которого сгенерированы сертификаты.

Если вы разворачиваете ПО ExeReport в демонстрационных, тестовых или обучающих целях (не на продуктивной среде) и не планируете использовать другой домен для работы приложения, то вы можете пропустить данный шаг инструкции

Далее необходимо открыть терминал ОС с root доступом, перейти в каталог, появившийся после распаковки архива, и выполнить команду:

bash install-exereport.sh

при этом произойдет загрузка образов, копирование данных и запуск сервисов.

При выполнении указанного выше скрипта производится установка Portainer - средства для  мониторинга работы контейнеризированных приложений. Если вам не требуется установка Portainer удалите из файла

install-exereport.sh следующий код:
docker volume create portainer_data
docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:2.20.2
systemctl restart docker

Если файл не запускается, измените права на этот файл командой:

chmod +x install-exereport.sh

После завершения выполнения скрипта будут запущены контейнеры приложений ExeReport, что будет подтверждено соответствующим сообщением в терминале.

После завершения инсталляции необходимо открыть web-консоль администрирования Keycloak в браузере по адресу https://keycloak.[домен]:5787. Для доступа в Keycloak необходимо воспользоваться логином и паролем административной учетной записи, которые указаны в параметрах KEYCLOAK_ADMIN_USER и KEYCLOAK_ADMIN_PASSWORD настроек контейнера keycloak в docker-compose.yaml.

В Keycloak необходимо перейти в настройки realm exemes, создать пользователя и добавить его в группу ExeReport_Admins.

Настройка переменных окружения

Переменные окружения - набор значений, который определяет необходимые параметры работы и запуска приложений

Пакет инсталляции ExeReport уже содержит настроенные переменные окружения и если вы не планируете менять настройки по умолчанию, то можете пропустить данный шаг.

Доступные настройки::

При запуске контейнера необходимо передать в переменной окружения DBConnection строку подключения к БД приложения ExeReport. Пример:

docker run [путь для скачивания образа приложения] -e DBConnection='Host=localhost;Port=5432;Database=exereport;Username=postgres;Password=postgres'

CORS (Cross-Origin Resource Sharing) — это механизм браузера, который позволяет определить список ресурсов, к которым страница может получить доступ.

Он необходим для обеспечения безопасности и защиты пользователей от злоумышленников при использовании HTTP-протокола.

По умолчанию сайты могут запрашивать ресурсы только со своего origin. Такое ограничение называется Same-Origin Policy. CORS расширяет Same-Origin Policy, позволяя получать доступ к ресурсам с разных доменов.

Разрешения CORS могут потребоваться, если вы вызываете методы ExeReport  в сторонних приложениях: внешних пользовательских портала, таких как ELMA365 и прочие.

 Для разрешения CORS необходимо передать переменную окружения AllowedCORSUrls, в которой через запятую перечислить разрешенные сайты. Пример:

-e AllowedCORSUrls='https://elma365.exeplant.local,https://portal.exeplant.local'

Доступно начиная с версии ExeReport 1.4

Для гибкой настройки параметров отчетов возможно использовать web API ExeMES.

Для подключения ExeReport к ExeMES необходимо передать переменную окружения MiddlewareApiRootUri, в которой указать ссылку на запущенное приложение ExeMES Server. Пример:

-e MiddlewareApiRootUri='https://middleware.mycompany.local/api'

Настройка переменной окружения MiddlewareApiRootUri также может быть выполнена путем редактирования файла docker-compose.yaml (по умолчанию строка закомментирована в файле в составе инсталляционного пакета). Пример:

MiddlewareApiRootUri: "https://middleware.mycompany.local:7142/api"

Доступно начиная с версии ExeReport 1.4

Время жизни отчета - это значение в секундах, по истечении которого отчет будет удален из внутренней памяти контейнера приложения. По-умолчанию эта настройка = 60 секундам. Минимальное возможное значение 10 секунд, максимальное - 1200 секунд.

Для настройки времени жизни отчета необходимо передать переменную окружения WebReportLifeTimeInterval, в которой указать значение в секундах. Пример:

-e WebReportLifeTimeInterval='600'

Настройка переменной окружения WebReportLifeTimeInterval также может быть выполнена путем редактирования файла docker-compose.yaml. Пример:

WebReportLifeTimeInterval: "600"

Проверка работоспособности ExeReport после установки

Для проверки работоспособности необходимо перейти в браузере по адресу "https://report.[домен]:9200/", авторизоваться под учетной записью пользователя с правами администратора, который был создан при установке и убедиться, что стартовая страница ExeReport отображаются корректно.

Если вы хотите отказаться от использования портов в адресах приложений, то необходимо использовать прокси-сервер, например Nginx

В настройках контейнеров ExeReport по умолчанию указана синхронизация времени контейнера с временем хоста, на котором он запущен. Рекомендуется синхронизировать локальное время хостов, на которых запускаются контейнеры ExeReport с корпоративном ntp сервером.