Обновление DCC v2
Перед обновлением зафиксируйте версии DCC и Экстрактора, текущий тег образа, конфигурацию публикации и незавершённые задачи. Согласуйте остановку отправки новых команд и обмена.
Создайте резервную копию PostgreSQL, Compose и закрытого файла настроек. Сохраните исходный
FERNET_KEY: без него сохранённые секреты не расшифруются.Получите комплект целевого релиза, изучите изменения API и миграций. Не используйте плавающий тег вместо согласованного релиза.
Установите новый
GATEWAY_IMAGEи запуститеdocker compose --env-file .env up -d. Для локальной сборки используйте--build. Миграции выполняйте способом, предусмотренным вашей поставкой; при автоматическом режиме проверьте результат в логах gateway.Проверьте
/ping, авторизацию JWT, возможности интеграции и существующий коннектор.Возобновите обмен тестовой базы, проверьте доставку команды, логи и конечный статус. После проверки возобновите рабочий обмен.
Смена JWT_SECRET_KEY делает ранее выданные токены недействительными: клиенты должны авторизоваться заново. Замена FERNET_KEY на работающей БД требует отдельной процедуры перешифрования.
Откат приложения после миграции может быть несовместим с новой схемой БД. План отката должен включать соответствующую резервную копию и конфигурацию. Старые команды с неопределённым результатом не создавайте заново с новыми ключами идемпотентности.