Для просмотра версии Chat Server воспользуйтесь командой:
docker logs elph-chat-server-1 | grep -B 5 -A 8 'Version'
Пример вывода команды:
+-----------------------------------------------------+ | SERVER RUNNING | +-----------------------------------------------------+ | | | Instance ID: 7fde0b5d-338f-42bf-97ce-2a2349aa16fb | | Version: 2.14.12 | | NodeJS Version: 14.21.3 - x64 | | Platform: linux | | Process Port: 3000 | | Access url: https://1.1.1.1/elph_chat | | API URL: https://1.1.12.12:3443/ | | | +-----------------------------------------------------+
Также версию Chat Server можно посмотреть по адресу: https://<chat-address>:3011/api/info или https://<elph-proxy-address>/elph_chat/api/info.
При обновлении с версий ниже 2.9.2 на 2.10.0 и выше медиа и файлы не сохранятся! Миграция медиа и файлов проводится по запросу. Для проведения миграции файлов обратитесь в коммерческий отдел компании Eltex: eltex@eltex-co.ru.
При обновлении с версий ниже 2.14.10 на 2.14.11 и выше потребуется перенести volumes.
При обновлении на 2.14.10 и выше, нужно проверить параметр mongo.featureCompatibilityVersion.
При обновлении MongoDB с версии 4.x до 6.x внутренний параметр featureCompatibilityVersion не обновляется автоматически. Перед обновлением проверьте значение параметра:
docker exec -it elph-mongo mongosh --quiet --eval \
'db.adminCommand({getParameter: 1, featureCompatibilityVersion: 1})'
Если версия = 4, то перед обновлением поднимите версию до 5:
docker exec -it elph-mongo mongosh --quiet --eval \
'db.adminCommand({setFeatureCompatibilityVersion: "5.0"})'
И перезапустите контейнер:
docker compose restart mongo
После обновления аналогично поднимите версию до 6.
Обновление Chat Server
Перед обновлением:
- Создайте резервную копию баз данных;
- Обновите Elph Proxy.
Подробнее про создание и восстановление резервной копии можно прочитать в разделе «Резервное копирование».
Обновление с версии ниже 2.14.10 (с переносом volumes)
1. Остановите Chat Server:
./ecss-elph-chat-server.sh down
2. Перейдите в директорию:
cd elph-chat-server/stable
3. Переместите предыдущие файлы конфигурации и docker-compose.yaml в бэкап-директорию:
sudo mv .env .elph-chat.env .push-gateway.env docker-compose.yaml ../elph-chat-backup-dir
4. Скачайте новые docker-compose.yaml и конфигурационные файлы:
wget https://archive.eltex-co.ru/service/rest/repository/browse/elph-services-raw/elph-chat-server/2.14.12/.env wget https://archive.eltex-co.ru/service/rest/repository/browse/elph-services-raw/elph-chat-server/2.14.12/docker-compose.yaml wget https://archive.eltex-co.ru/service/rest/repository/browse/elph-services-raw/elph-chat-server/2.14.12/services/.elph-chat.env wget https://archive.eltex-co.ru/service/rest/repository/browse/elph-services-raw/elph-chat-server/2.14.12/services/.push-gateway.env
5. Отредактируйте конфигурационный файл .env:
<nano/vim/mcedit> .env
ELPH_PROXY="proxy.ip.or.domain" ELPH_CHAT="chat.ip.or.domain" ELPH_STATUS_SERVICE="status.ip.or.domain" ECSS_ADDRESSBOOK_HOST="address-book.ip.or.domain" LDAP_HOST="" ELPH_SSW="ssw.ip.or.domain" ELPH_SSW_DOMAIN="domain.name"
6. Обновите образы:
docker compose pull
7. Поднимите сервис командой:
docker compose up -d
8. Остановите сервис без очистки volumes:
docker compose down --volumes=false
9. Перенести все volumes elph-chat-server-stable_[SERVICE] в stable_[SERVICE].
Для каждого сервиса выполните:
docker run --rm \ -v elph-chat-server-stable_mongodb_data:/source \ -v stable_mongodb_data:/target \ alpine sh -c "cp -av /source/. /target/"
Чтобы посмотреть список volumes:
docker volumes ls
10. Поднимите сервис командой:
docker compose up -d
После обновления проверьте и измените конфигурационные файлы .env. Изменения внесенные вручную не сохраняются!
После изменения .env перезапустите Chat Server.
Будьте внимательны при установке конкретной сборки Chat Server. Downgrade в текущей версии Chat Server не предусмотрен.