<< Click to Display Table of Contents >> Администрирование (Linux) > Локальная установка системы > Установка системы (Directum Launcher) Установка с помощью командной строки |
Серверные компоненты Directum RX в операционной системе на базе Linux развертываются с использованием docker-контейнеров. Каждому серверному компоненту соответствует отдельный контейнер.
Параметры развертывания задаются в конфигурационном файле config.yml. На компьютере развертываются сервисы, указанные в секции services_config. Брокер сообщений RabbitMQ и MongoDB можно развернуть вместе с системой Directum RX или на отдельный компьютер.
Порядок развертывания
1.Архив с Directum Launcher распакуйте в локальную папку на сервере с помощью команды:
tar -xvf <Имя архива> -С <Имя папки>
ВАЖНО. Для корректной установки общий путь к файлам должен быть не более 256 символов. Также он не должен содержать пробелы, символы кириллицы, запятые и спецсимволы. Поэтому используйте, например, папку /srv/DirectumLauncher.
2.В корень папки с Directum Launcher скопируйте архивы:
•Platform.tar.gz – веб-сервер и сервисы Directum RX;
•DirectumRX.tar.gz – набор стандартных шаблонов документов, утилита RxCmd и стандартная прикладная разработка Directum RX;
•DockerImages.tar.gz – базовые docker-образы, если на сервере отсутствует доступ к сети Интернет;
•WebHelp.zip – справка и слайдер.
Некоторые компоненты зависят друг от друга. Например, без актуальной платформы нельзя добавить прикладную разработку. Версии зависимых компонентов должны быть совместимы. Если зависимый компонент нужной версии не найден в папке с Directum Launcher, то при выполнении команды ./do.sh components add <название компонента> возникнет ошибка. Проверьте, что все нужные архивы есть в папке.
В таблице приведены примеры компонентов, у которых есть зависимости:
Компонент |
От какого компонента зависит |
---|---|
DirectumRX |
Platform |
WebHelp |
Platform |
3.Увеличьте максимально допустимое количество наблюдателей за файлами на текущем компьютере – системный параметр /proc/sys/fs/inotify/max_user_instances. Для этого в командной строке перейдите в созданную папку и с привилегиями суперпользователя выполните команду:
./do.sh set_inotify_instances_limit
4.Добавьте компоненты системы. Для этого выполните команду:
./do.sh components add_all
5.Дальнейшие действия выполняйте под учетной записью пользователя, от имени которого запущена служба Docker. Если используется учетная запись без привилегий суперпользователя, то выдайте пользователю полные права на папку с Directum Launcher и вложенные в нее папки и файлы.
6.Создайте конфигурационный файл config.yml на основе файла DirectumLauncher/etc/config.yml.example. Сгенерируйте минимально необходимые настройки с помощью команды:
./do.sh platform generate_config_yaml
7.Если в компании не используется DNS-сервер, то в созданном файле в секции extra_hosts укажите соответствие IP-адреса текущего сервера и доменного имени, по которому доступна система Directum RX.
Пример настройки:
extra_hosts:
company-rx.directum.ru: '192.168.0.42'
Во время установки указанное соответствие запишется в файл hosts docker-контейнеров. Это необходимо для корректного импорта шаблонов документов и пакетов разработки.
ПРИМЕЧАНИЕ. Настройка секции extra_hosts также может потребоваться, если используемый дистрибутив Linux не поддерживает работу docker-контейнеров с DNS.
8.По умолчанию при установке системы используются базовые docker-образы из репозитория registry.directum.ru/directum. Можно использовать свои docker-образы, например, если в компании есть жесткие требования безопасности.
Для этого подготовьте базовые docker-образы. Затем в конфигурационном файле config.yml в секции variables добавьте переменную image. В ее параметрах name и version задайте имя и версию образа.
ВАЖНО. Имя и версия должны совпадать со значениями, указанными для переменных окружения REPO_NAME, IMAGE_NAME и IMAGE_VERSION в скрипте сборки образов set_vars.ps1.
Пример настройки в скрипте set_vars.ps1:
$env:IMAGE_VERSION='4.1.0'
$env:REPO_NAME='registry.directum.ru/directum/'
$env:IMAGE_NAME='rx-base'
Пример настройки в конфигурационном файле config.yml:
variables:
image:
name: 'registry.directum.ru/directum/rx-base'
version: '4.1.0'
9.Если служба Docker запускается от учетной записи без привилегий суперпользователя (в режиме Rootless), то добавьте дополнительные настройки, иначе пропустите этот шаг:
•в секцию variables добавьте переменную is_rootless и укажите для нее значение true – использовать режим работы без привилегий суперпользователя. Значение по умолчанию false.
Пример настройки:
variables:
is_rootless: 'true'
Проверьте, что для учетной записи выданы полные права на файлы сертификатов. Например, права на SSL-сертификат, сертификаты сервиса ключей, промежуточные и другие сертификаты, использующиеся для работы в Directum RX. Список установленных сертификатов можно посмотреть с помощью утилиты certificate-tool. Также выдайте права на чтение и запись в папки, в которых будут находиться папки с лог-файлами и со статус-файлами, права на чтение и запись в папку сервиса хранилищ, сервиса хранения файлов предпросмотра и другие папки, путь до которых задается в конфигурационном файле config.yml.
•для дополнительной безопасности можно настроить запуск служб внутри контейнеров от учетных записей без привилегий суперпользователя. Для этого в Directum Launcher во встроенном редакторе YAML добавьте параметр CONTAINER_BUILD_ARG.
10.Установите и настройте RabbitMQ, MongoDB.
11.Чтобы обеспечить информационную безопасность, рекомендуется задавать двух разных пользователей сервера БД:
•для создания базы данных при установке;
•для взаимодействия системы с базой данных при последующей работе.
Для этого в командной строке задайте переменные окружения:
export CONNECTION_STRING_ADMIN_USERNAME=<Имя пользователя сервера БД>
export CONNECTION_STRING_ADMIN_PASSWORD=<Пароль>
Где:
CONNECTION_STRING_ADMIN_USERNAME – имя пользователя сервера БД с правами администратора. Права администратора есть у пользователей, которые на сервере БД включены в роль sysadmin (для Microsoft SQL) или в роль с атрибутом superuser (для СУБД на основе PostgreSQL). Для повышения информационной безопасности не рекомендуется указывать стандартного пользователя: sa – для Microsoft SQL, postgres – для СУБД на основе PostgreSQL;
CONNECTION_STRING_ADMIN_PASSWORD – пароль пользователя сервера БД, указанного в переменной CONNECTION_STRING_ADMIN_USERNAME.
Переменные окружения хранятся только в текущей сессии командной строки, поэтому данные защищены от компрометации.
Затем укажите второго пользователя в конфигурационном файле config.yml в секции common_config в строке подключения CONNECTION_STRING. От имени этого пользователя система будет взаимодействовать с базой данных. Если пользователь не существует, то он создастся автоматически. Для обеспечения безопасности данных не рекомендуется указывать пользователя с правами суперпользователя.
Если для создания базы данных не используется отдельный пользователь, то в параметре CONNECTION_STRING укажите пользователя с правами администратора. Он будет использоваться и для создания базы данных при установке, и для взаимодействия системы с БД при последующей работе.
12.В конфигурационном файле config.yml заполните минимальные настройки.
13.Установите платформу системы. Для этого выполните команду:
./do.sh platform install
14.Проверьте, что контейнеры платформы запустились. Для этого выполните команду:
docker ps
Отобразится список запущенных контейнеров. Сравните список с компонентами в секции services_config конфигурационного файла config.yml.
15.Установите справку и слайдер. Для этого выполните команду:
./do.sh webhelp install
16.Опубликуйте стандартную прикладную разработку и импортируйте стандартные шаблоны документов. Для этого выполните команду:
./do.sh rx install
Если нужно опубликовать заказную разработку и импортировать свои шаблоны, то вместо указанной выше команды выполните:
./do.sh dt deploy --package="<Путь к пакету 1>;<Путь к пакету 2>;<Путь к пакету N>"
./do.sh rxcmd import_templates --templates_dir_path="<Путь к шаблонам>"
Пример:
./do.sh dt deploy --package="/srv/rxdata/custom_dev/custom_dev.dat"
./do.sh rxcmd import_templates --templates_dir_path="/srv/rxdata/templates/"
17.Чтобы открыть веб-клиент системы, воспользуйтесь ссылкой: http или https://<адрес сайта>:<порт>/<имя приложения, по умолчанию client>. Для удобства рекомендуется добавить ее в закладки браузера и отправить пользователям.
В результате развертывания:
•собираются docker-образы;
•запускаются контейнеры с сервисами Directum RX.
Подробнее об используемых при установке командах см. в руководстве администратора, раздел «Команды скриптов развертывания».
© Компания Directum, 2024 |