У меня возникла необычная проблема, с которой я раньше не сталкивался. Я получил уведомление по электронной почте о том, что для моей установки Discourse доступно обновление. Перейдя по ссылке, я узнал, что сначала необходимо обновить установку Docker, прежде чем можно будет обновить что-либо ещё.
Я видел такое множество раз, поэтому обновил его с помощью установщика в один клик. На этот раз всё было иначе: меня отвлекли в процессе. Когда я вернулся через пару часов, я увидел, что Docker был успешно установлен.
Я нажал на вкладку «Версии» вверху, чтобы затем обновить всё остальное. Но когда эта страница загрузилась, она оказалась полностью пустой. Выглядело это так:
Я вижу, что эта проблема периодически возникает. Есть ли возможность реализовать её встроенным образом, чтобы при необходимости выполнять пересборку и чистое обновление для подобных обновлений? Я думаю о людях, у которых запуск таких команд может быть невозможен, а поддержка может медленно реагировать на запросы о пересборке, и это может произойти в неудобное время для администратора сайта.
Это справедливое замечание: очевидно, что в конечном итоге найдется этап, который потребует ручного обновления. Я бы возразил, что процесс управления должен требовать значительно меньше пересборок, если его основная задача — пересборка приложения. Это должно быть возможно реализовать с минимальным количеством зависимостей и минимальным количеством обновлений без простоя.
Если вы не хотите обновляться так часто, возможно, не стоит обновляться так часто.
Я не думаю, что вы привели убедительные аргументы против продолжения внесения улучшений в базовый образ. Необходимость обновления через командную строку варьируется, это происходит не особенно часто, а случаи, когда это критически необходимо, ещё более редки.
На самом деле я даже не осознавал, что выступаю с такой позицией. Обещаю, что я точно не призываю к более редкому выпуску обновлений
Я просто хотел высказать своё мнение о том, что, на мой взгляд, стало бы удобной функцией, даже если это случается редко и создаёт некоторые неудобства. У меня нет проблем с выполнением команды по мере необходимости.
Возможно, компромиссным решением было бы следующее: когда применяется обновление, требующее выполнения этой команды, администратор получает уведомление в панели управления (или, например, через баннер, не знаю точно), где чётко указывается, что необходимо сделать. (Это также, возможно, сократило бы количество сообщений вроде «Я обновил систему, и теперь xyz пустое/отсутствует/не работает», которые время от времени появляются).
Я только что исправил корневую причину, из-за которой этот экран становился белым.
У нас было обновление плагина docker manager, которое было несовместимо со старыми версиями Discourse. Я добавил код для восстановления совместимости. К сожалению, если экран стал белым, у вас есть только один выход:
Спасибо, Сэм (и @gerhard!). Бывало, что мне приходилось использовать командную строку для пересборки приложения перед обновлением, но впервые я столкнулся с этим белым экраном. Хорошо знать, что для этого есть причина и что это привело к исправлению.
Сейчас я пересобираю всё через командную строку.
ДОПОЛНЕНО: Процесс завершён, всё в порядке. На странице версии отображаются все мои плагины, и всё обновлено.