Здравствуйте! У меня есть отдельный контейнер с базой данных PostgreSQL, поскольку я столкнулся с довольно серьёзной проблемой при остановке и запуске контейнера Discourse, а также предпочитаю держать базу данных отдельно от программы Discourse.
Как указано здесь, «Discourse требует PostgreSQL версии 13 или новее», поэтому я загрузил последнюю версию — 14. Проблем с её использованием не возникло, но я заметил ошибку при автоматическом резервном копировании, связанную с версией pg_dump.
Если вы используете более позднюю версию PostgreSQL, чем та, которую мы поставляем, вам также потребуется самостоятельно выполнять резервное копирование.
Я думаю, что также можно установить клиентские компоненты PostgreSQL 14 внутри вашего контейнера, чтобы инструменты резервного копирования работали корректно.
Не уверен, что это имеет отношение к моему вопросу. У меня уже установлена конфигурация из двух контейнеров, всё работает нормально: Discourse в одном контейнере, Postgres 14 — в другом. Единственное, что не работает, насколько я знаю, — это pg_dump, который по какой-то причине отказывается выполняться во время автоматического резервного копирования Discourse.
Не знаю, проблема ли это в Discourse или в Postgres, но странно, что всё работает, кроме одной команды.
Наш базовый образ включает как клиентские утилиты, так и сервер PostgreSQL одной и той же основной версии. Поскольку вы используете для PostgreSQL другой образ с иной основной версией, вам потребуется самостоятельно выполнить резервное копирование.