Если я добавляю или удаляю компоненты темы в текущей теме по умолчанию, предпочтения пользователей не обновляются соответствующим образом (один из моих компонентов добавляет поле ввода для предпочтений пользователя).
Чтобы поле ввода было добавлено (или удалено), мне приходится очищать кеш CDN.
Наличие страниц с предпочтениями пользователей в кеше с неверными данными также приводит к ошибке 403, если пользователь хочет изменить некоторые настройки.
Эта проблема не затрагивает мою учётную запись администратора, но влияет на обычную учётную запись, которую я создал для тестирования.
## это шаблон автономного контейнера Docker Discourse "всё в одном"
##
## После внесения изменений в этот файл вы ОБЯЗАНЫ выполнить пересборку
## /var/discourse/launcher rebuild app
##
## БУДЬТЕ *ОЧЕНЬ* ОСТОРОЖНЫ ПРИ РЕДАКТИРОВАНИИ!
## YAML-ФАЙЛЫ ЧРЕЗВЫЧАЙНО ЧУВСТВИТЕЛЬНЫ К ОШИБКАМ В ПРОБЕЛАХ И ВЫРАВНИВАНИИ!
## при необходимости проверьте этот файл на сайте http://www.yamllint.com/
templates:
- "templates/postgres.template.yml"
- "templates/redis.template.yml"
- "templates/web.template.yml"
- "templates/web.ratelimited.template.yml"
## Раскомментируйте эти две строки, если хотите добавить Lets Encrypt (https)
- "templates/web.ssl.template.yml"
- "templates/web.letsencrypt.ssl.template.yml"
## какие TCP/IP-порты должен открывать этот контейнер?
## Если вы хотите, чтобы Discourse использовал тот же порт, что и другой веб-сервер, например Apache или nginx,
## см. https://meta.discourse.org/t/17247 для деталей
expose:
- "80:80" # http
- "443:443" # https
params:
db_default_text_search_config: "pg_catalog.english"
## Установите db_shared_buffers максимум на 25% от общего объёма памяти.
## будет установлено автоматически при загрузке на основе обнаруженного объёма ОЗУ, либо вы можете переопределить
db_shared_buffers: "2048MB"
## может улучшить производительность сортировки, но увеличивает использование памяти на соединение
#db_work_mem: "40MB"
## Какую ревизию Git должен использовать этот контейнер? (по умолчанию: tests-passed)
#version: tests-passed
env:
LANG: en_US.UTF-8
# DISCOURSE_DEFAULT_LOCALE: en
## Сколько одновременных веб-запросов поддерживается? Зависит от объёма памяти и количества ядер CPU.
## будет установлено автоматически при загрузке на основе обнаруженного количества CPU, либо вы можете переопределить
UNICORN_WORKERS: 8
## TODO: Доменное имя, на которое будет реагировать этот экземпляр Discourse
## Обязательно. Discourse не будет работать с чистым IP-адресом.
DISCOURSE_HOSTNAME: unicyclist.com
## Раскомментируйте, если хотите, чтобы контейнер запускался с тем же
## именем хоста (опция -h), что указано выше (по умолчанию "$hostname-$config")
#DOCKER_USE_HOSTNAME: true
## TODO: Список email-адресов через запятую, которые станут администраторами и разработчиками
## при первой регистрации, например 'user1@example.com,user2@example.com'
DISCOURSE_DEVELOPER_EMAILS: 'canapin@gmail.com'
## TODO: SMTP-сервер, используемый для проверки новых учётных записей и отправки уведомлений
## Адрес SMTP, имя пользователя и пароль обязательны
# ВНИМАНИЕ: символ '#' в пароле SMTP может вызвать проблемы!
DISCOURSE_SMTP_ADDRESS: smtp.gmail.com
DISCOURSE_SMTP_PORT: 587
DISCOURSE_SMTP_USER_NAME: no-reply@email.unicyclist.com
DISCOURSE_SMTP_PASSWORD: xxx
#DISCOURSE_SMTP_ENABLE_START_TLS: true # (необязательно, по умолчанию true)
## Если вы добавили шаблон Lets Encrypt, раскомментируйте ниже, чтобы получить бесплатный SSL-сертификат
LETSENCRYPT_ACCOUNT_EMAIL: me@example.com
## Адрес CDN по протоколу http или https для этого экземпляра Discourse (настроен на получение)
## см. https://meta.discourse.org/t/14857 для деталей
DISCOURSE_CDN_URL: https://f5i4i8k5.stackpathcdn.com
## Контейнер Docker не имеет состояния; все данные хранятся в /shared
volumes:
- volume:
host: /var/discourse/shared/standalone
guest: /shared
- volume:
host: /var/discourse/shared/standalone/log/var-log
guest: /var/log
## Плагины размещаются здесь
## см. https://meta.discourse.org/t/19157 для деталей
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- git clone https://github.com/discourse/discourse-data-explorer.git
- git clone https://github.com/paviliondev/discourse-locations
- git clone https://github.com/davidtaylorhq/discourse-whos-online
## Любые пользовательские команды для запуска после сборки
run:
- exec: echo "Начало пользовательских команд"
## Если вы хотите установить адрес email в поле 'From' для вашей первой регистрации, раскомментируйте и измените:
## После получения первого email регистрации закомментируйте строку обратно. Выполнять нужно только один раз.
#- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "Конец пользовательских команд"