Установка платформы Mobile SMARTS на ПК с ОС Linux

Применимо к продуктам: Mobile SMARTS платформа
Последние изменения: 2023-09-13

Опубликовано: 11.07.2022

Ниже указаны версии ОС и параметры ПК/ виртуальных машин, на которых тестировалась работоспособность сервера Mobile SMARTS при средней (до 10 подключенных устройств) нагрузке.

Версии Linux:

  • Astra Linux
  • Ubuntu
  • Debian

Требования к ПК:

Процессор Двухъядерный с тактовой частотой ядра 2 ГГц и выше (x64)
ОЗУ 8 ГБ
Тип диска SSD
Свободное пространство на диске 10 Гб и более

Версии Linux, с которыми работа сервера не тестировалась, но должна поддерживаться:

  • Alpine
  • CentOS
  • Fedora
  • OpenSUSE
  • Red Hat Enterprise Linux
  • SLES

Какой функционал Mobile SMARTS не поддерживается Linux:

  1. Серверная печать.
  2. Любые дополнительные коннекторы к учетным системам.
  3. Сервис подписи документов («Кировка»)
  4. Коннектор Axapta
  5. Коннектор 1С работает только в режиме Web (пример строки для подключения к http-сервисам 1С — ).

Запуск базы Mobile SMARTS на сервере Linux

  1. На сервере Linux создайте новую папку /opt/MobileSMARTSDB, внутренняя структура которой должна соответствовать описанной ниже.

  2. На сервере Linux создайте папку /opt/MSContainer (где «MSContainer» — произвольное имя контейнера), а внутри её — папку «Templates» (opt/MSContainer/Templates).

  3. На сервере Windows создайте .zip архив базы продукта Mobile SMARTS (предполагается, что база уже создана и настроена). По умолчанию база продукта находится в папке по пути C:\ProgramData\Cleverence\Databases\.

  4. Измените расширение и название архива базы на default.mstmpl.

  5. Скопируйте файл default.mstmpl в папку opt/MSContainer/Templates.

  6. На сервере Linux выполните команду:

    docker pull cleverence1/platform_odata:latest
    

  7. Выполните команду:

    sudo docker run -dit --pull=always --name MSContainer -p 10501:80 -v /opt/MobileSMARTSDB:/app/AppData -e InstanceId=msdb -e DataService__ExternalServerUrl=http://ip_сервера:порт cleverence1/platform_odata:latest
    

Параметр DataService__ExternalServerUrl необходим, чтобы сервер формировал корректные строки подключения и QR-коды.

Перенос базы Mobile SMARTS с ОС Windows

Чтобы перенести уже существующую базу Mobile SMARTS на ОС Linux, необходимо:

  1. Проверить структуру папок в папке /opt/MobileSMARTSDB, и в случае отличия, привести ее к такому виду.

    В папке «Common» должен лежать файл apps.xml, как в платформе, содержащий описание базы. Пример:

    <?xml version="1.0" encoding="utf-8"?>

    <AppInstances xmlns:clr="http://schemas.cleverence.ru/clr" count="1"> <AppInstance appId="A0043528-C6CC-48F9-8BB3-8C5BEF2FCA79"                                       folder="AppData/Database"                                   id="rtl15"                                    name="MobileSMARTSDB"                                    platformDataDir="AppData"                                    platformInstallDir="/app" /> </AppInstances>

    Своё описание базы вы можете посмотреть в Windows по пути «C:\ProgramData\Cleverence\Common\apps.xml».
  2. В папке «Database» должны лежать файлы базы.


  3. И только после этого выполнять команду установки из dockerhub.

Для проверки успешности развертывания базы откройте страницы http://ipмашины:10501 (страница сервера), либо http://ipмашины:10501/idбазы (страница базы) в браузере.

Остановка, запуск, перезапуск и удаление сервера Mobile SMARTS

Остановка docker stop MSContainer
Запуск docker start MSContainer
Перезапуск docker restart MSContainer
Удаление (удалится только контейнер, папка с базой останется неизменной) docker rm MSContainer

MSContainer — уникальное имя контейнера

Просмотр текущих логов в консоли

docker logs -f MSContainer

MSContainer — уникальное имя контейнера

Установка лицензий

  • Остановите сервер
  • Положите файлы лицензий в папку «/opt/MobileSMARTSDB/Database/Licenses»
  • Запустите сервер

Обновление сервера Mobile SMARTS на новую версию

  1. Остановите сервер.
  2. Удалите старый контейнер.
  3. Установите новую версию, выполнив строку:

    sudo docker run -dit --name MSContainer -p 10501:80 -v /opt/MobileSMARTSDB:/app/AppData -e InstanceId=msdb -e DataServiceExternalServerUrl=http://ip сервера:порт cleverence1/platform_odata:latest

    Расшифровку параметров строки смотрите тут.

Обновление базы Mobile SMARTS из шаблона

Такой функционал пока не поддерживается.

Включение авторизации по пользователю

  1. Заранее заведите в вашей базе пользователей с нужными правами, в т. ч. администратора.
  2. Остановите сервер.
  3. В файле «/opt/MobileSMARTSDB/server_config.json» исправьте или создайте строку
    	 {
      "Authentication":{
        "Enabled": "True"
      }
    }
    
  4. Запустите сервер.

Настройка подключения к базе Mobile SMARTS

При добавлении новой базы можно подключиться к предустановленной (в нашем случае «Магазин 15»). Для этого нужно выбрать пункт «Add the database located on another computer» --> «Manually enter URL for connection».

Далее введите строку подключения, где вместо 192.168.0.139 — адрес сервера, rtl15 — идентификатор базы (в данном случае используется встроенная база).

Проверка соединения:

Подключение завершено.

Подключение к базе Mobile SMARTS по HTTPS

Подключиться к базе Mobile SMARTS по https можно одним из указанных способов:

  1. Получить https сертификат, преобразовать его в pfx формат, и запустить контейнер с параметрами:

    -e ASPNETCORE_Kestrel_CertificatesDefaultPassword: пароль -e ASPNETCORE_KestrelCertificatesDefault_Path: /https/aspnet.pfx — путь к папке с сертификатом: /https:ro

  2. Запустить через прокси (например, nginx), настроить в нем https сертификат и сделать proxy_pass.

Вариант №2 является наиболее правильным и предпочтительным.


Была ли статья полезна?
Спасибо за ваш отзыв!
Отзыв
Заполните, пожалуйста, данную форму, что конкретно вы не нашли, оставьте свои комментарии о работе сайта / полезности / сложности с навигацией
0/500