I think @zogstrip suggested entering the forum database you want to replicate (via SSH), clone the site_settings table into that database and replace that particular table in each new site you’re going to create.
./discourse-settings-uploader https://discourse.example.com d35989078a system site_settings.json
One caveat: It uploads only settings that are marked as changed. This means that if there’s some setting that’s changed on the site you’ve uploaded that you want to restore to default with the script it won’t work. The solution is to edit the JSON file so that the default value there doesn’t match the value you want to set.
Now what’s needed is a way to easily download all themes and then upload them. Uploading
a set of files shouldn’t be hard to do. Downloading themes by hand could be tedious, so some automated way to get all of them would be nice.
As long as the setting is available it will be set. Settings that don’t exists can’t get set, but make only that it doesn’t get set. For example, if you have a plugin installed on the system your are copying from its settings exist only if the target system has the plugin as well. When that happens an error is presented for each unavailable setting.
Было бы невероятно круто, если бы вы добавили возможность экспорта/резервного копирования текущих настроек сайта в файл, а затем позволяли бы новому форуму импортировать этот файл и применять те же настройки. Кто-нибудь может это реализовать? Это очень полезная функция, если я захочу создать полный клон данных и настроек моего сайта.
Какие у меня есть варианты, если я хочу получить полный клон моего текущего форума, включая данные пользователей, темы, сообщения, изображения, а также настройки администратора Discourse и плагинов, как я их настроил? Кто-нибудь может подсказать? @pfaffman
На данный момент я могу сохранить только файлы app.yml и папку discourse, которая содержит папку с именем shared. Мне кажется, что в ней находятся все данные базы данных и загруженные пользователями файлы?
Создайте новый форум. Сделайте резервную копию текущего форума. Восстановите эту резервную копию на новом форуме. Вы можете сократить количество шагов, если оба форума используют одно и то же хранилище S3 для резервных копий.
Создайте новый форум. Сделайте резервную копию текущего форума. Восстановите эту резервную копию на новом форуме. Вы можете сэкономить несколько шагов, если оба форума используют одно и то же хранилище S3 для резервных копий.
Почему мне нужно делать ручное резервное копирование только настроек сайта, если описанный выше метод уже сохраняет все настройки плагинов и сайта, а также изображения, загрузки, базу данных, сообщения, темы и т. д.?
Если я следую этим трём шагам, предоставит ли мой экспорт сайта полную резервную копию настроек сайта и плагинов, а также базы данных и загруженных файлов?
Создайте новый форум.
Сделайте резервную копию текущего форума, перейдя в панель управления администратора и в раздел резервного копирования (не через командную строку, верно?).
Восстановите эту новую резервную копию, полученную на шаге 2, и вставьте её в новый форум, созданный на шаге 1.
У меня пока нет бакетов для резервного копирования; мой форум просто размещён на Droplet от DigitalOcean и находится в директории на моём сервере внутри папки var/discourse/shared. Но я не понимаю, почему мой файл docker-compose.yml для Discourse находится в /www/discourse. Не понимаю, почему все файлы Discourse распределены между этими двумя папками, которые находятся по разным путям.