Я думаю об автоматическом обновлении Discourse через cron. Например, раз в две недели ночью cron будет выполнять следующую команду:
cd /var/discourse
./launcher rebuild app
Как вы думаете, это безопасно? Или лучше делать это вручную?
Я думаю об автоматическом обновлении Discourse через cron. Например, раз в две недели ночью cron будет выполнять следующую команду:
cd /var/discourse
./launcher rebuild app
Как вы думаете, это безопасно? Или лучше делать это вручную?
Возможно, что что-то пойдёт не так, и вы оставите свой сайт нерабочим. Я рекомендую быть внимательным, когда вы это делаете.
Да. Я подумывал отправить все результаты сборки по почте, чтобы проверить их утром.
Лично я делаю то же самое со своими сайтами, но использую установку в два контейнера на случай сбоя при загрузке.
Старый контейнер останавливается, а новый запускается только после успешного завершения загрузки.
На данный момент у меня не возникло никаких проблем.
Как сказал Джей, в редких случаях обновление может вызвать проблемы (будь то в самом Discourse или с плагинами/компонентами).
Я сталкивался с этим несколько раз за пару лет. Это очень редко, и исправления вносятся быстро, но из-за этого я предпочитаю сначала получать информацию об обновлениях (и проверять категорию bug
), прежде чем пересоздавать свои экземпляры. Часто я жду несколько дней после официального выпуска новой версии.
Также иногда выполняю ./launcher cleanup.
Поэтому я предпочитаю обновляться тогда, когда хочу, и после сбора информации. У меня есть возможность быстро реагировать на возможные проблемы, так что это безопаснее.
Есть ли что-то новое об этом в 2026 году?
Я хотел бы как можно скорее внедрить обновления безопасности (даже с риском нарушения работы продакшн-сайта из-за отсутствия внимания к обновлению). Discourse на самом деле не различает обновления безопасности и другие… поэтому я не против обновлять всё каждый день. Остаётся ли cron-задача актуальным решением?
Лично я бы так не делал. С одной стороны, мне даже не нужно обновляться ежемесячно для исправления уязвимостей — то есть, я читаю примечания к выпуску и принимаю решение. С другой стороны, если обновляться ежедневно, вы чаще столкнетесь с редкими случаями, когда система откажет. У вас, безусловно, будет больше простоев.
Если вас не смущает, что задание cron иногда будет «убивать» форум, пока кто-то опытный не приедет и не починит его, тогда конечно, запускайте задание cron. Но имейте в виду: опытному специалисту, возможно, придётся связаться с разработчиками здесь и ждать ещё несколько часов, пока проблема не будет диагностирована и устранена.
Обновление Discourse не ломало мой форум за последние 4 года, поэтому я не беспокоюсь. Если оно сломает что-то раз в синюю луну, я смогу с этим справиться.
Мое беспокойство связано больше с безопасностью: недавние события (например, взлом пакетов npm от Axios неделю назад…) показывают, что нам, возможно, стоит обновлять библиотеки через 7 дней после нового релиза.
Если бы можно было немедленно обновлять элементы, связанные с безопасностью, а остальное — с задержкой в 7 дней, это было бы идеально, но, насколько я знаю, в Discourse такая функция не поддерживается.
Проблема с обновлением может не только вызвать сбой форума, но и незаметно внести новые ошибки, неработающие функции, несовместимость плагинов или компонентов и т. д. — хотя это случается редко.
Даже если резкое увеличение частоты обновлений на вашем форуме повышает риск столкновения со сбоями или ошибками, вы всегда можете посмотреть, как всё пойдет, и откатить изменения, если столкнетесь с чрезмерными неудобствами.
Что я хочу сказать, так это то, что, хотя это может и не быть лучшей идеей по мнению некоторых, это также не является особенно рискованным.