Я определенно пытаюсь переложить вину. Проблема с самостоятельным размещением, точнее говоря, заключается не столько в понимании операционной системы сервера. Большинство пользователей устанавливают ОС и обычно поддерживают её в актуальном состоянии. Однако часто при использовании LTS-версий они могут не знать или не понимать, как обновлять саму ОС. Особенно если они привыкли к rolling-релизам.
Например, в компании, которой я помогаю, после длительного отсутствия обновлений заметили доступное обновление. Поэтому они обновили Docker через веб-интерфейс. Это позволило им затем обновить Discourse.
Из-за того, что Ubuntu LTS была недостаточно новой, обновление Docker не соответствовало минимальным требованиям. Веб-интерфейс всё же разрешил попытку обновления, которое, разумеется, не удалось и привело к падению сайта.
Затем они попытались выполнить пересборку через командную строку, что также не удалось из-за несоответствия минимальным требованиям.
Если бы веб-интерфейс при обновлении определял, что версия Docker не соответствует минимальным требованиям, он мог бы прервать процесс обновления, уведомив о неудовлетворённой зависимости, не допуская падения сайта.
Я бегло осмотрел ситуацию. Похоже, что на сервере запущены и другие службы. Я порекомендовал им попросить своего специалиста изучить возможность обновления LTS до более новой версии. Я не хотел пытаться обновлять ОС сам, чтобы не сломать другие работающие на сервере приложения.
Есть ли простой способ перезапустить контейнер до попытки пересборки через веб и командную строку?
Я попробовал ./launcher start app,
но это не сработало.
Ещё один момент. Из-за того, что сайт Discourse упал, может ли помочь запуск нового сервера с использованием rsync? У них используется стабильная версия вместо рекомендованной с пометкой «тесты пройдены».
Если они запустят ‘do-release-upgrade’ и вручную обновят Docker, поможет ли это обновить PostgreSQL?