Установка и настройка сервера Mobile SMARTS на Linux
Ниже указаны версии ОС и параметры ПК/ виртуальных машин, на которых тестировалась работоспособность сервера 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:
- Серверная печать.
- Любые дополнительные коннекторы к учетным системам.
- Сервис подписи документов («Кировка»)
- Коннектор Axapta
- Коннектор 1С работает только в режиме Web (пример строки для подключения к http-сервисам 1С:
http://127.0.0.1/ut115demo/ws/CleverenceWebExtension.1cws).
Все пути и имена файлов в Linux регистрочувствительны.
Установка Docker
В Linux все действия с Mobile SMARTS выполняются через Docker, поэтому в первую очередь необходимо проверить, установлен ли у вас Docker:
docker --version
Если Docker установлен, команда выведет информацию о версии, например:
Docker version 24.0.2, build cb74dfc
Если Docker не установлен, нужно обязательно установить его на ПК.
- Официальная инструкция по установке Docker для Ubuntu
- Официальная инструкция по установке Docker для Debian
Не рекомендуется устанавливать Docker через snap!
При использовании snap, пакеты работают в изолированном окружении (sandbox), поэтому Docker через snap ограничен в доступе к системным ресурсам и файлам вне стандартных путей.
Если у вас уже установлен docker через snap, обязательно удалите перед обычной установкой:
snap remove docker
Перенос базы с Windows сервера
Если у вас уже ранее была развернута база Mobile SMARTS, например, под Windows версией сервера, и вы хотите перенести её под Linux, то следуйте шагам, описанным ниже.
- Остановите существующий сервер под Windows, чтобы избежать изменений в папке базы.
- Заархивируйте содержимое папки базы в ZIP-архив, и переименуйте полученный архив в default.mstmpl.
Шаблон должен быть ОБЯЗАТЕЛЬНО в виде ZIP-архива.
Никакие tar, rar и тем более 7z не поддерживаются.
Шаблон должен содержать в себе только файлы базы, без подпапок.
![]()
Далее создайте новую базу из шаблона по инструкции ниже. В качестве шаблона используйте полученный вами файл default.mstmpl.
Создание сервера с новой базой из шаблона
Если вы разворачиваете абсолютно новую баз у, то вы можете сделать это из шаблона продукта (файла с расширением .mstmpl).
Подготовка
Выберите какой‑нибудь уникальный идентификатор для вашей будущей базы (например, CleverenceDB).
Создайте папки:
mkdir -p /opt/CleverenceDB/Templates
mkdir -p /opt/CleverenceDB/Database
В папку Templates положите шаблон базы, который вы хотите развернуть под именем default.mstmpl.
Дайте права на папку /opt/CleverenceDB для пользователя, под которым запущен процесс docker:
sudo chown -R root /opt/CleverenceDB
sudo chmod -R 770 /opt/CleverenceDB
Создание контейнера сервера
Образ самой актуальной версии сервера —
cleverence1/platform4:latestСписок доступных образов по ссылке.
![]()
Установка и запуск контейнера
sudo docker pull cleverence1/platform4:latest
Эта команда скачивает последнюю версию образа платформы (latest).
Если вы хотите установить какую‑то конкретную версию сервера, то следует использовать номер этой версии, например:
sudo docker pull cleverence1/platform4:4.0.0.44180
Создание контейнера
sudo docker run -dit --name CleverenceDBContainer1 --restart unless-stopped -p 10501:80 \
-v /opt/CleverenceDB/Templates/default.mstmpl:/app/AppData/Templates/default.mstmpl \
-v /opt/CleverenceDB/Database:/app/AppData/Database \
-e InstanceId=CleverenceDB \
-e DataService__ExternalServerUrl=http://X.X.X.X:10501/CleverenceDB \
cleverence1/platform4:latest
Что можно менять:
CleverenceDBContainer1— уникальное имя контейнера.10501— порт.InstanceId=CleverenceDB— уникальный идентификатор базы.DataService__ExternalServerUrl— внешний адрес сервера.
Остановка, запуск, перезапуск контейнера
| Действие | Команда |
|---|---|
| Остановка | docker stop CleverenceDBContainer1 |
| Запуск | docker start CleverenceDBContainer1 |
| Перезапуск | docker restart CleverenceDBContainer1 |
| Удаление контейнера | docker rm CleverenceDBContainer1 |
Просмотр текущих логов в консоли
docker logs -f CleverenceDBContainer1
Обновление сервера на новую версию
docker stop CleverenceDBContainer1
docker rm CleverenceDBContainer1
docker pull cleverence1/platform4:latest