Обновление программы
В данной инструкции описывается процесс обновления Business Studio 7.
Внимание! Данная инструкция описывает обновление с официально выпущенных версий Business Studio 7. В случае если вы обновляете программу с бета версии (версии до 7.0.9544 не включительно), для получения инструкций по обновлению напишите в техническую поддержку по адресу: support@businessstudio.ru
Для проведения обновления выполните последовательно инструкции, указанные ниже.
1. Подготовительный этап
Перед проведением обновления:
1. Создайте резервные копии всех используемых баз. Для каждой из них:
- Запустите десктопный клиент приложения (см. Десктопное приложение Business Studio).
- В окне Выбор базы данных выберите нужную базу и нажмите «Свойства».
- Нажмите кнопку «Сохранить» и выберите папку для сохранения.
2. Создайте резервную копию файлов конфигурации и сертификатов, используемых текущей установкой Business Studio. Рекомендуется сохранить копии следующих файлов:
.env;docker-compose.yml;appsettings.json;SSL-сертификаты.
3. Загрузите файлы новой версии Business Studio 7.
Для этого подключитесь к консоли веб-сервера Linux и выполните в терминале команду, предоставленную технической поддержкой в сообщении о выпуске соответствующей версии.
После выполнения команды необходимые действия выполняются автоматически: создаётся каталог установки, загружаются файлы новой версии и запускается инсталлятор bs_setup.sh. Далее следуйте инструкциям инсталлятора.
4. Перед выполнением обновления рабочего стенда рекомендуется выполнить обновление на тестовом контуре. На тестовом контуре необходимо:
- выполнить установку новой версии с помощью инсталлятора `bs_setup.sh`;
- проверить запуск и работоспособность обновленной системы;
- сравнить новые файлы конфигурации с файлами текущего рабочего стенда;
- определить необходимые изменения и перенести их в конфигурацию рабочего стенда.
После успешной проверки обновления на тестовом контуре можно выполнять обновление рабочего стенда.
Важно: пункт меню «Переустановить» в bs_setup.sh не предназначен для перехода на новую версию Business Studio 7. Он используется для повторного запуска инсталлятора поверх существующего стенда, в том числе для завершения незавершённых этапов установки или изменения параметров конфигурации (домен, БД, LDAP). Для обновления версии необходимо использовать файлы новой версии и выполнить процедуру, описанную в разделах 1–2 данной инструкции.
2. Внесение изменений в файлы конфигурации
В рамках выхода новых версий Business Studio 7 в файлы конфигурации могут вноситься изменения: добавляться новые параметры, изменяться значения существующих, удаляться устаревшие ключи и т.д. Список измененных файлов и изменений по каждой версии приведён ниже в разделе Changelog ниже.
2.1 Понимание различий между версиями
Чтобы понять, чем файлы конфигурации новой версии отличаются от ваших текущих, можно воспользоваться любым из следующих способов:
- Команда
vimdiff— открывает оба файла рядом с цветовой подсветкой различий:
vimdiff <свой_файл> <новый_файл> - В текстовом редакторе с функцией сравнения, например,
Notepad++(меню Plugins - Compare),VS Code(выделите два файла - правая кнопка мыши - Compare Selected) или любой другой редактор с поддержкой diff. - В специализированных утилитах сравнения, например,
Meld,Beyond Compare. - Через ИИ-ассистента - загрузите оба файла в любой чат-ассистент и попросите найти отличия.
Пример промпта для ИИ:
Сравни два файла конфигурации. Для каждого отличия укажи: тип изменения (добавлено / изменено / удалено), секцию и ключ, краткое описание на русском языке что делает этот параметр. Результат оформи таблицей с колонками: Тип, Секция, Ключ, Описание.
2.2 Обновление конфигурационных файлов
При обновлении можно воспользоваться любым из следующих подходов:
- Актуализировать свои файлы — внести в текущие конфигурационные файлы изменения на основе информации из раздела Changelog ниже и описаний параметров из файла
Содержимое appsettings.jsonc(см. Файл "Содержимое appsettings.jsonc"). - Взять новые файлы за основу — использовать файлы конфигурации из папки с обновлением и перенести в них свои специфичные настройки. Описание параметров и примеры также см. в файле
Содержимое appsettings.jsonc.
При переносе настроек в новые файлы конфигурации обратите особое внимание на:
- параметры версий образов в файле .env (BS_BACKEND_VERSION, BS_LICENCE_SERVER_VERSION, BS_NODE_JS_VERSION) — необходимо привести их в соответствие с новой версией;
- параметры подключения к репозиторию и загрузки файлов (ARTIFACT_URL, GITLAB_TOKEN) — необходимо сохранить и перенести в конфигурацию новой версии;
- пользовательские настройки в файле
appsettings.json; - настройки портов и монтирования томов в файле
docker-compose.yml; - пути к сертификатам и другим внешним ресурсам.
Необходимо проверить:
- корректность монтирования томов и портов (это все переменные, указанные в строках
VolumesиPorts); - пути к сертификатам и другим внешним ресурсам.
Примеры строк, требующих проверки при использовании собственных сертификатов:
- ./DockerCompose/Certificates/https:/certs
- ./DockerCompose/Certificates/https/bs-backend:/https
- ./DockerCompose/Certificates/https/bs-license-server:/https
- ./DockerCompose/Certificates/https:/opt/certificates
Внимание! Используйте файлы конфигурации из новой версии. Копирование файлов .env, docker-compose.yml или appsettings.json из старой версии поверх новых может привести к критическим ошибкам при запуске стенда.
История изменений (Changelog)
Таблица с переводами строк
| Номер версии | Список измененных файлов | Ссылка на подробный список изменений |
|---|---|---|
| 7.0.9727-3 | .env, docker-compose.yml, appsettings.json, nginx.conf.template, entrypoint.sh, fluent.conf, bs_setup.sh, bs_menu.sh, eula.md, INSTALL.md, logs-cleanup.sh | История изменений (Changelog) 7.0.9728 |
| 7.0.9614 | .env, docker-compose.yml, appsettings.json, nginx.conf.template | История изменений (Changelog) 7.0.9614 |
3. SSL-сертификаты и настройка доверия (CA / Truststore)
Для настройки безопасного соединения выполните следующие шаги:
- Убедитесь, что в конфигурации указаны корректные пути к SSL-сертификатам.
- Если используются собственные SSL-сертификаты, проверьте их наличие и доступность для контейнеров.
- Снимите пароль с приватного ключа, иначе система его не примет.
Примечание: рекомендуемый формат приватного ключа — PKCS#8. Если формат ключа другой, его можно cконвертировать командой:
openssl pkcs8 -topk8 -inform PEM -outform PEM -in <старый ключ>.key -out <новый ключ>.key -nocrypt
4. Завершающий этап
1. При обновлении на новую версию программы может потребоваться конвертация баз данных (см. Конвертация базы данных).
2. После внесения изменений в файлы конфигурации запустите скрипт ./bs_menu.sh , перейдите в раздел "Управление BS7" и выполните необходимую операцию:
- «Запуск BS7» — используется для запуска Business Studio 7, в том числе при обновлении версии. При выполнении операции загружаются образы версий, указанных в файле .env, после чего необходимые контейнеры создаются или пересоздаются и запускаются.
- «Перезапустить BS7» — используется для применения изменений конфигурации, если контейнеры уже запущены. При этом контейнеры пересоздаются и запускаются с использованием имеющихся образов, без повторной загрузки образов.
После успешного перезапуска проверьте работоспособность стенда:
- доступность веб-интерфейса;
- авторизацию пользователей;
- работу с документами;
- отсутствие критических ошибок в логах.
Если контейнеры Business Studio 7 уже запущены и требуется применить изменения конфигурации, используйте пункт «Перезапустить BS7». При перезапуске контейнеры будут пересозданы и запущены с использованием имеющихся образов. Повторная загрузка образов при этом не выполняется.
Внимание! Команду необходимо запускать из папки текущего стенда.
При возникновении ошибок обратитесь за консультацией в службу технической поддержки по адресу: support@businessstudio.ru, приложив скриншоты и описание ошибки.
3. После проверки работоспособности системы обновление считается завершённым.
Если после обновления будут обнаружены ошибки в работе программы, систему можно откатить к предыдущей версии с использованием раннее созданных резервных копий, чтобы избежать простоя на время устранения неполадок совместно со службой технической поддержки (см. Процедура отката).