...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
...
Установка через образы
Содержимое дистрибутива из поставки скопировать на сервер Smart Forms: из папки images необходимо скопировать
...
файлы platform-deployment.tar.gz и v2/smart-forms-app.tar.gz,
...
v2/smart-forms-db.tar.gz,
v2/viloader-app.tar.gz,
...
v2/viloader-db.tar.gz,
...
v2/python-script-service.tar.gz,
...
v2/promtail.tar.gz, сохраняя структуру вложенных элементов.
Предупреждение Если предполагается установка платформы, используя Yandex Container Registry, копировать папку images дистрибутива не требуется.
На сервере перейти в скопированную папку с дистрибутивом.
...
Загрузите образ platform-deployment.tar.gz в память Docker, выполнив команду:
Блок кода language bash
...
chmod +x *.sh
...
Для локальной установки:
...
docker load < images/platform-deployment.tar.gz
Запустите контейнер развёртки, который создаст скрипты в каталоге
/var/lib/visiology/scripts/
Блок кода language bash docker run -it --rm \ -u "$(id -u):$(id -g)" \ -v /etc/passwd:/etc/passwd:ro \ -v /var/lib/visiology:/mnt/volume \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/platform-deployment:2.32_3.3
Запустите скрипт load_images.sh
...
:
Блок кода language bash
...
/var/lib/visiology/scripts/v2/load_images.sh --with-smart-forms yes --with-dashboard-server no --with-viqube no -i <path_to_distrib>/images/v2
где
path_to_distrib
- абсолютный путь к дистрибутиву платформыПримечание Установка с указанными параметрами означает, что на данном сервере будут установлены только компоненты SmartForms.
...
Установка из Yandex Container Registry
...
Создайте новый каталог XXX (любое произвольное название) и перейдите в него - в нём будут находиться скрипты для запуска платформы.
Войдите в Yandex Container Registry
...
:
Блок кода language bash
...
docker login \ --username oauth \ --password <token> \ cr.yandex
...
где <token>
...
- токен, полученный из
...
запроса https://oauth.yandex.ru/authorize?response_type=token&client_id=1a6990aa636648e9b2ef855fa7bec2fb
...
Выполните команду:
Блок кода language bash docker pull cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/platform-deployment:2.32_3.3
Запустите контейнер развёртки, который создаст скрипты в каталоге
/var/lib/visiology/scripts/
:Блок кода language bash docker run -it --rm \ -u "$(id -u):$(id -g)" \ -v /etc/passwd:/etc/passwd:ro \ -v /var/lib/visiology:/mnt/volume \ cr.yandex/crpe1mi33uplrq7coc9d/visiology/release/platform-deployment:2.32_3.3
Запустите скрипт v2/load_from_release_dockerhub.sh
...
:
Блок кода language bash
...
/var/lib/visiology/scripts/v2/load_from_release_dockerhub.sh -t 2.
...
32 --with-smart-forms yes --with-dashboard-server no --with-viqube no
...
...
- -t 2.30
здесь -t 2.30 означает, что скрипту необходимо загрузить образы релиза версии 2.30
...
Настроить сервер Smart-Forms
На сервере с основной частью платформы выполнить:
Блок кода language bash
...
docker swarm join-token worker
Если команда вернула ошибку, то выполнить команду ниже и повторить предыдущую.
Блок кода language bash
...
docker swarm init --force-new-cluster
Из вывода сохранить строчку вида "docker swarm join --token <TOKEN> <IP>"
На
...
сервере Smart-Forms выполнить сохранённую команду из предыдущего пункта
Добавить метку для сервера Smart-Forms.
На основном сервере выполнить
Блок кода language bash
...
docker node ls
В выводе должны быть несколько нод. В строчке со звёздочкой указан ID "мастер" ноды, в других "воркер" ноды, на которые можно установить Smart-Forms.
Выполнить
Блок кода language bash
...
docker node update --label-add smart-forms=true <worker_node_id> # Если на мастер ноде уже ранее запускалась платформа с Smart Forms, # то нужно вручную удалить тег smart-forms с этой ноды: docker node update --label-rm smart-forms <master_node_id>
Примечание <worker_node_id> - айдишник нужной "воркер" ноды
<master_node_id> - айдишник мастер ноды с основной частью платформыДля более подробного вывода по "воркер" нодам, можно воспользоваться:
Примечание docker inspect -f "{{.ID}} {{.Status.Addr}} {{.Spec.Labels}}" $(docker node ls -q)
Создать необходимые папки на сервере Smart-Forms:
Блок кода | ||
---|---|---|
|
...
...
sudo mkdir -p /docker-volume/smart-forms && \ sudo mkdir -p /docker-volume/smart-forms/postgresql && \ sudo mkdir -p /docker-volume/proxy/proxy.crt && \ sudo mkdir -p /docker-volume/viloader/application/files && \ sudo mkdir -p /docker-volume/viloader/application/logs && \ sudo mkdir -p /docker-volume/viloader/application/configs && \ sudo mkdir -p /docker-volume/viloader/database && \ sudo mkdir -p /docker-volume/python-script-service |
На основном сервере выполнить Подготовку к запуску и запуск платформы.
Предупреждение |
---|
...
Команда |
...
true |
Предупреждение |
---|
При использовании https необходимо удалить каталог /docker-volume/proxy/proxy.crt и положить файлы сертификатов в каталог /docker-volume/proxy на сервере SmartForms |