У меня есть общий вопрос и более конкретный вопрос, касающийся наилучшей практики с Docker и Postgresql.
- На данный момент у меня есть 2 ВМ (с виртуальной коробкой), на которых работают 2 разныесайты django, и я хотел бы перейти на докеров.Конечно, мне не нужны 2 докера nginx, и я буду использовать один докер nginx для обоих сайтов ... но как насчет PostgreSQL?Я думаю, один докер с одним экземпляром PostgreSQL и обеими БД - лучшее решение ... или нет?
Если решение, использующее один докер PostgreSQL, является предпочтительным ... Мне нужно загрузить данные из 2 исходных БД ... Что я сделал, так это создал дамп каждой БД (используя pg_dump
Я получил файл 1 из db1 с владельцем root1 и файл 2 из db2 с владельцем root2), а затем попытался загрузить обе базы данных, копируя оба выходных файла в docker-entrypoint-initdb.d
.Загрузка одной БД работает правильно, но как это сделать для обоих?Каждая БД имеет своего владельца (пользователя root), и когда я попытался определить файл ENV
следующим образом:
POSTGRES_USER=root1,root2
POSTGRES_PASSWORD=123456
POSTGRES_DB=db1,db2
В то время как третьи строки принимаются для определения 2 разных БД, похоже, что перваянет (я не могу определить 2 разных владельцев).Поэтому моя идея состоит в том, чтобы вручную изменить владельца второй БД на первую (что означает изменение root2 на root1 в file2).Это единственный способ сделать это?Или есть лучший подход?Может быть, выгрузите одну БД, а затем вручную загрузите вторую из оболочки docker bash?
Есть предложения?