Преднамеренно ли обновления через веб-интерфейс могут вызывать критические изменения?

Я только что попробовал обновить систему через веб-интерфейс. Первый этап прошёл нормально, но на втором шаге (обновление версии Discourse) процесс прервался на середине, выдал ошибку, и форум больше не работает — отображается только страница «Ой».

При попытке войти по SSH, чтобы вручную выполнить команду ./launcher rebuild app, я получаю:

ERROR: Docker version 18.06.3-ce not supported, please upgrade to at least 20.10.0, or recommended 24.0.7

Оставив в стороне возможные решения этой проблемы (которые выходят за рамки моего уровня комфорта и компетенции), я хочу уточнить: так и должно быть? У меня было смутное представление, что интерфейс должен быть защищён от ошибок пользователя, и что к SSH нужно обращаться только для выполнения опасных операций. Поэтому я решил попробовать обновиться, не убедившись заранее, что мой IT-специалист будет доступен в качестве резервной поддержки.

Он делает достойную попытку, но если повреждены базовые компоненты, он ничего не сможет сделать.

Dashboard.literatecomputing.com выполнит обновление через командную строку одним кликом и обновит Docker, если это потребуется. Также он перезапустит существующий контейнер, если создание нового завершится неудачей.

Всё ещё могут возникнуть проблемы.

Главное преимущество обновления UX — отсутствие простоя, что в основном обеспечивается двухконтейнерной настройкой.

Считается ли устаревшая версия Docker признаком поломки? Я бы склонился к тому, что это изменение, ломающее совместимость, со стороны Discourse.

Я посмотрю. Действительно, мы используем собственный хостинг, и операционная система также устарела, поэтому мы знали, что в будущем потребуется определённая работа, но не ожидали, что нас заставят сделать это внезапно.

Это расстраивает.

Если вы зайдёте на Docker Engine | endoflife.date (и нажмёте кнопку «показать больше не поддерживаемых версий»), то увидите, что поддержка Docker 18 прекратилась 6 лет назад (18 августа 2018 года). Действительно, ещё не рано обновляться.

Так что да, если вы настолько устарели в плане Docker и вашей ОС, как вы и знали, то и Discourse вам тоже не стоит обновлять. :person_shrugging:

Не уверен, возможно ли для Discourse определить версию Docker, под которой он работает, чтобы предупредить вас об этом в интерфейсе.