Вышел What’s Up Docker 9.0, крупное обновление инструмента мониторинга обновлений контейнеров. В него добавили новый слой хранения данных на базе SQLite, ролевую модель доступа, персональные API-токены и заметно переработанную систему аутентификации.

Одно из главных изменений: переход с LokiJS на SQLite. В основе лежит Drizzle ORM. Новая схема подразумевает автоматические миграции структуры базы данных, а существующие установки переносят старые данные незаметно для пользователя прямо во время обновления.

В WUD 9.0 также появилась ролевая модель доступа с тремя ролями: администратор, чтение и запись, только чтение. Пользователями теперь можно управлять прямо из веб-интерфейса, где администраторы назначают роли и сбрасывают пароли.

What's Up Docker UI
What's Up Docker UI

Ещё одно заметное нововведение, поддержка персональных API-токенов. Их можно создавать с правами на чтение или запись и при желании задавать срок действия. Это даёт более удобный способ программного доступа к REST API WUD.

Поддержка OpenID Connect тоже расширилась. WUD теперь автоматически создаёт пользователей и синхронизирует роли на основе group claims от настроенного провайдера идентификации. Улучшили и профили пользователей: смена пароля, управление API-токенами и синхронизация выбора светлой или тёмной темы между сессиями.

Также проект заменил логгер Bunyan, который больше не поддерживается, на Pino. Новый просмотрщик логов в реальном времени использует Server-Sent Events и показывает логи прямо в интерфейсе.

Разработчики и администраторы получили новую интерактивную документацию OpenAPI со встроенным исследователем запросов, информацией о схемах и примерами кода. Имена проектов Docker Compose теперь отображаются в интерфейсе, и по ним можно фильтровать контейнеры.

Однако есть и важные несовместимые изменения. Анонимный доступ убрали, поэтому WUD 9.0 теперь требует аутентификации. Нужно настроить хотя бы одну учётную запись администратора, иначе приложение откажется запускаться.

Также старые статические переменные окружения Basic Authentication признали устаревшими в пользу bootstrap-учётных данных администратора или OIDC, а остальных локальных пользователей создают через веб-интерфейс.

Наконец, ответы об ошибках REST API привели к единому формату, так что скриптам, которые полагаются на старый формат ответов, может потребоваться доработка. В релизе также исправили несколько проблем: работу Docker watchers, провайдеров реестров, сравнение семантических версий, обработку SMTP TLS, настройки интерфейса и совместимость с Docker 29.8 и новее.

Подробности в списке изменений на GitHub.

Изображение: WUD