Backup only Site Settings

I would like to know the possibility of backing up Only Site Settings, just as opposite of what was asked here

The purpose is to replicate forums for different clients. If I can replicate settings, its easy to proceed with different categories, topics & users.

Please advise.

PS: I couldn’t understand by reading this

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.

I believe @techapj has expressed interest in this feature but we do not have it yet.

Alright.

So, I need to install Discourse as usual and take this step to replicate the settings. Will the instance version different make any conflicts here?

If we have to get the forum logo to new one, we will have to re-upload this, I suppose. Am I right?

Save https://yoursite/admin/site_settings.json. Use GitHub - pfaffman/discourse-settings-uploader: Install a Discourse settings JSON file to a site to upload them.

To install these settings to another site

Do this:

./discourse-settings-uploader HOSTURL API_KEY API_USER SETTINGS_FILE

For example:

./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.

This sounds good. Will try this method next time I create a new forum.

I hope Discourse version difference will not make any issue, however I do update forums on regular basis… :slight_smile:

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.

О, это была бы просто спасительная функция.

Смотрите здесь: Administrative Bulk Operations

Было бы невероятно круто, если бы вы добавили возможность экспорта/резервного копирования текущих настроек сайта в файл, а затем позволяли бы новому форуму импортировать этот файл и применять те же настройки. Кто-нибудь может это реализовать? Это очень полезная функция, если я захочу создать полный клон данных и настроек моего сайта.

Какие у меня есть варианты, если я хочу получить полный клон моего текущего форума, включая данные пользователей, темы, сообщения, изображения, а также настройки администратора Discourse и плагинов, как я их настроил? Кто-нибудь может подсказать? @pfaffman

На данный момент я могу сохранить только файлы app.yml и папку discourse, которая содержит папку с именем shared. Мне кажется, что в ней находятся все данные базы данных и загруженные пользователями файлы?

Выше описаны два способа сделать это.

Создайте новый форум. Сделайте резервную копию текущего форума. Восстановите эту резервную копию на новом форуме. Вы можете сократить количество шагов, если оба форума используют одно и то же хранилище S3 для резервных копий.

Спасибо за быстрый ответ,

Создайте новый форум. Сделайте резервную копию текущего форума. Восстановите эту резервную копию на новом форуме. Вы можете сэкономить несколько шагов, если оба форума используют одно и то же хранилище S3 для резервных копий.

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

Если я следую этим трём шагам, предоставит ли мой экспорт сайта полную резервную копию настроек сайта и плагинов, а также базы данных и загруженных файлов?

  1. Создайте новый форум.
  2. Сделайте резервную копию текущего форума, перейдя в панель управления администратора и в раздел резервного копирования (не через командную строку, верно?).
  3. Восстановите эту новую резервную копию, полученную на шаге 2, и вставьте её в новый форум, созданный на шаге 1.
  4. У меня пока нет бакетов для резервного копирования; мой форум просто размещён на Droplet от DigitalOcean и находится в директории на моём сервере внутри папки var/discourse/shared. Но я не понимаю, почему мой файл docker-compose.yml для Discourse находится в /www/discourse. Не понимаю, почему все файлы Discourse распределены между этими двумя папками, которые находятся по разным путям.

Пожалуйста, подтвердите.