Установка Dashboard

Для установки Dashboard требуется скопировать его файлы в целевую папку. Для этого нужно выполнить команду:

sudo cp -r ~/Загрузки/TerraLink.xDEPro/Integration.Dashboard /opt/TerraLink.xDEPro/Integration/Integration.Dashboard

Настройка подключения к Integration API

Для работы Dashboard понадобится подключение к Integration API.

Для настройки подключения нужно открыть конфигурационный файл appsettings.json в текстовом редакторе:

sudo nano /opt/TerraLink.xDEPro/Integration/Integration.Dashboard/wwwroot/appsettings.json

и задать строку подключения в поле ApiConnectAddress, указав имя или IP-адрес хоста и порт для подключения к Integration API через Nginx:

"ApiConnectAddress": "http://192.168.11.128:6101",

Затем нужно сохранить файл (Ctrl+O) и выйти из редактора (Ctrl+X).

Примечание

Dashboard является SPA-приложением.
Файл appsettings.json загружается в браузер, поэтому имя или IP-адрес хоста должны быть внешними, чтобы Dashboard смог подключаться к Integration API.

Предупреждение

Файл appsettings.json не должен содержать пароли, ключи доступа к API и т. д.

Включение логирования

По умолчанию логирование в Dashboard включено и настроено на логирование в консоль браузера.

Настройка доступа к Dashboard через Nginx

Для настройки доступа к Dashboard через Nginx требуется создать файл с конфигурацией сайта в текстовом редакторе:

sudo nano /etc/nginx/sites-available/xde-integration-dashboard

и скопировать в него содержимое:

# ограничение по количеству запросов в единицу времени для SPA-приложения
limit_req_zone $binary_remote_addr zone=one:50m rate=30r/s;

server {
    # виртуальный сервер настраивается на порт по умолчанию для этого SPA-приложения + 100
    listen        6110;

    # в примере доступ к этому SPA-приложению возможен только по IP-адресу
    server_name   192.168.11.128;
    location / {
        # каталог с файлами сайта
        root                /opt/TerraLink.xDEPro/Integration/Integration.Dashboard/wwwroot;

        # перенаправление на index.html для корректной маршутизации
        try_files   $uri $uri/ /index.html =404;

        # отключение задержки в обработке запросов и ограничение пикового числа запросов в очереди
        limit_req zone=one burst=300 nodelay;
    }
}

Затем нужно сохранить файл (Ctrl+O) и выйти из редактора (Ctrl+X).

Примечание

Для доступа по IP-адресу значение параметра server_name должно быть равно фактическому IP-адресу машины, на которую устанавливается Dashboard. Выше в конфигурационном файле указан пример IP-адреса.

Теперь нужно создать ссылку на конфигурационный файл сайта в папке /etc/nginx/sites-enabled/ и перезапустить Nginx:

sudo ln -s /etc/nginx/sites-available/xde-integration-dashboard /etc/nginx/sites-enabled/
sudo systemctl restart nginx

Предупреждение

Не используйте HTTP-подключение к Nginx в продуктивной среде. Это может привести к несанкционированному доступу к данным, в том числе к содержимому документов и паролям. Используйте HTTPS-подключение.

Проверка доступности Dashboard

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

http://192.168.11.128:6110

В ответ в браузере должна открыться страница авторизации Dashboard.