Offline-обновление применяется, когда сервер с ECCM не имеет прямого доступа в интернет: все необходимые файлы скачиваются заранее в виде архива и переносятся на сервер вручную. Инструкция подходит для обновления с версии 2.0 и выше для однохостовой и многохостовой установки и состоит из нескольких шагов: создание резервной копии, получение и распаковка архива, остановка старой версии ECCM, запуск новой версии продукта.
Для возможности отката к предыдущей версии перед началом обновления рекомендуется создать резервную копию данных. Если ECCM установлен на сервере с виртуализацией, сделайте снимок (snapshot) системы. В ином случае — создайте резервную копию базы данных |
[ -d eccm/2.10 ] && sudo cp -r eccm/2.10 "eccm/eccm-backup-2.10-$(date +%Y%m%d)" # создание резервной копии текущей директории ECCM, если она существует |
Файлы системы распространяются в виде архива .tar.gz и находятся в общедоступном облаке. Скачайте архив на сервер и распакуйте его в заранее созданную отдельную директорию:
wget "https://cloud.eltex-co.ru/index.php/s/P8xDfmyo3XyEs0g/download?path=%2F&files=eccm-offline-2.10.tar.gz" -O eccm-2.10.tar.gz [ ! -d eccm ] && mkdir eccm sudo tar -zxvf eccm-2.10.tar.gz -C eccm/ |
В случае многохостовой установки скачайте и распакуйте архив и на сервер с ECCM, и на сервер с базой данных. |
|
С версии 2.7 ECCM поддерживает PostgreSQL 16.11. Перед обновлением до версии 2.7 подготовьте базу данных по инструкции "Обновление базы данных". |
Когда ECCM запущен на одном хосте (ECCM и база данных находятся на одном сервере), для остановки старой версии ECCM и удаления контейнеров выполните команду из директории с файлами запуска старой версии ECCM:
cd <путь до каталога с файлами запуска ECCM 2.10> sudo ./compose-tools.sh --stop --delete-containers sudo docker network prune |
Когда ECCM запущен на нескольких хостах (ECCM на одном сервере, база данных — на другом), для остановки старой версии ECCM выполните команды, приведенные ниже.
На сервере с ECCM:
cd <путь до каталога с файлами запуска ECCM 2.10> sudo ./compose-tools.sh --stop --delete-containers sudo docker network prune |
На сервере с базой данных:
cd <путь до каталога с файлами запуска ECCM 2.10>/postgres sudo docker compose down |
Перед запуском самих контейнеров скрипт проверяет наличие файла |
Для однохостовой системы после успешной остановки старой версии ECCM перейдите в директорию, в которую был распакован архив с новой версией ECCM, и выполните команду:
cd <путь до каталога с файлами запуска ECCM 2.10> sudo ./compose-tools.sh --load sudo ./compose-tools.sh --start <IP ADDRESS> |
Если система установлена на нескольких хостах, для запуска новой версии ECCM выполните команды, приведенные ниже.
На сервере с базой данных:
cd <путь до каталога с файлами запуска ECCM 2.10> sudo ./compose-tools.sh --load sudo ./compose-tools.sh --start <IP ADDRESS DATABASE> --database-only |
На сервере с ECCM:
Для корректной работы конфигурационный файл с паролями .env.personal должен быть одинаковым на серверах базы данных и ECCM. Синхронизируйте файл конфигурации между серверами утилитой rsync. После успешного запуска сервера с базой данных выполните команду:
sudo rsync -av --delete --rsync-path="sudo rsync" <полный путь до директории eccm>/.env.personal <имя пользователя сервера>@<IP-адрес сервера назначения>:<полный путь до директории eccm> |
После выполнения команды для каждого сервера назначения файл конфигурации будет соответствовать настроенному ранее.
cd <путь до каталога с файлами запуска ECCM 2.10> sudo ./compose-tools.sh --load sudo ./compose-tools.sh --start <IP ADDRESS> --database-host <IP ADDRESS DATABASE> --database-port <PORT DATABASE> |