Привет! Как перезапустить Discourse, находясь в консоли контейнера?
Почему вы не можете перезапустить его из каталога Discourse? Скрипт для выполнения этой задачи предназначен для запуска именно оттуда.
Если я сделаю это таким образом, все изменения, которые я внес в файлы внутри контейнера, будут сброшены при перезапуске всего контейнера…
Ваши изменения сохранятся, если вы внесете их правильно:
- через переменные в app.yml
- через тему или компонент темы
- через плагин (например, если нужно изменить поведение бэкенда)
- в базу данных (желательно через фронтенд или rake-задачу)
- загрузок
При редактировании app.yml необходимо пересобрать приложение
Не для всего. Некоторые изменения переменных применятся при простом перезапуске через лаунчер, например, учетные данные SMTP, насколько я понимаю.
./launcher restart app
Нет, значения остались старыми, хотя я перезапустил после редактирования YML.
Какие переменные?
Для многих переменных вам точно потребуется пересборка.
Пересборка — это нормально. Примите это :).
Восстановление занимает слишком много времени
Что ж, вам не следует пересобирать проект чаще одного раза в неделю? И даже в этом случае я бы чаще использовал страницу обновлений, чтобы избежать значительных простоев.
Да. Это просто занимает время — от 15 до 30 минут, если вы настраиваете файл app.yml.
После редактирования выполните команду ./launcher rebuild app
или
вы можете использовать команду ./launcher rebuild app --skip-prereqs