Как сохранить / восстановить состояние виртуальной машины с Discourse

Сохранить и восстановить виртуальную машину можно как посредством VirtualBox, так и посредством Vagrant.
Vagrant в данном случае выступать как абстракция над VirtualBox, команды с Vagrant покороче, поэтому покажу именно этот способ.

Сохранение виртуальной машины

Для сохранения виртуальной машины сделайте текущей корневую папку с программным кодом Discourse, и затем выполните команду vagrant suspend.

Обратите внимание, что если виртуальная машина и программный код установлены на оперативный диск (как я настоятельно рекомендую), то Вам также нужно сохранить оперативный диск в постоянный файл.

Теперь Вы можете, например, выключить свой компьютер: Ваша работа с Discourse сохранена и не пропадёт.

Восстановление виртуальной машины

Шаг 1.
При необходимости восстановить оперативный диск.

Шаг 2.
Правильная команда для восстановления виртуальной машины зависит от того, перезагружали ли Вы Windows после предыдущего сохранения виртуальной машины.

Если не перезагружали (и компьютер не выключали), то для всстановления виртуальной машины можно использовать команду vagrant resume.

Если же Вы перезагружали Windows (в том числе если выключали компьютер), то применение vagrant resume приведёт к зависанию подключения к виртуальной машине.
Видимо, такое поведение вызвано каким-то дефектом в одной из программ среды.
Чтобы избежать такого зависания, вместо vagrant resume используйте vagrant reload

Шаг 3.
Если виртуальная машина восстанавливается после перезагрузки Windows, то перед запуском Discourse рекомендую удалить папку tmp.

Шаг 4.
Запустите Discourse.