Установка Dashboard

Для установки Dashboard в Docker нужно:

  • задать параметры контейнера;

  • выполнить скрипт, который создаст контейнер на основе образа;

  • запустить контейнер;

  • настроить доступ к Dashboard через Nginx.

Задание параметров контейнера

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

nano ~/Загрузки/TerraLink.xDEPro/Integration.Dashboard/ContainerConfiguration.json

Параметры контейнера приведены ниже:

{
    "Appsettings": {        // содержимое файла конфигурации appsettings.json
        // ...
    }
}

В поле ApiConnectAddress требуется указать строку подключения к Integration API, который был развернут ранее:

{
    "Appsettings": {
        "ApiConnectAddress": "http://192.168.11.128:6101",
        // ...
    }
}

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

Примечание

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

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

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

Создание и запуск контейнера

Для создания контейнера нужно перейти в папку с образом:

cd ~/Загрузки/TerraLink.xDEPro/Integration.Dashboard

и с помощью Powershell Core выполнить скрипт CreateDockerContainer.ps1:

rootlessenv pwsh ./CreateDockerContainer.ps1

В результате будет создан контейнер с именем xde-integration-dashboard-container.

В терминал также будет выведен идентификатор контейнера. Он понадобится для запуска.

Примечание

Определить идентификатор контейнера можно, выполнив команду:

rootlessenv docker container ls -a

Команда выведет в терминал список контейнеров с их именами и идентификаторами.

Теперь следует запустить контейнер:

rootlessenv docker container start container_id

где container_id - идентификатор созданного контейнера, полученный на предыдущем шаге.

Далее нужно вернуться в домашнюю папку:

cd ~

Лог-файлы

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

Том для хранения лог-файлов не создается.

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

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

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

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

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

        # в примере доступ к этому HTTP-приложению возможен только по IP-адресу
        server_name   192.168.11.128;
        location / {
                # порт по умолчанию для этого HTTP-приложения - 6010
                proxy_pass         http://127.0.0.1:6010;
                proxy_http_version 1.1;
                proxy_set_header   Upgrade $http_upgrade;
                proxy_set_header   Connection keep-alive;
                proxy_set_header   Host $host:$server_port;
                proxy_cache_bypass $http_upgrade;
                proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header   X-Forwarded-Proto $scheme;
        }
}

Затем нужно сохранить файл (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.