Я хочу запустить postgres внутри контейнера Docker со смонтированным томом.Я следую шагам, как описано здесь .Однако контейнер никогда не запускается.Я думаю, это потому, что каталог /var/lib/postgresql/data
принадлежит пользователю postgres
с uid 999
и группе postgres
с gid 999
.
Насколько я понимаю, мне нужно создать пользователя и группу с одинаковыми uid
и gid
на моем хосте (имя не имеет значения) и назначить эти разрешения для каталога, который я монтируюна моем хосте.
Проблема в том, что uid
и gid
уже заняты на моем хосте.Я могу перестроить образ Docker из Dockerfile и изменить значения uid
и gid
, но я не думаю, что это хорошее долгосрочное решение, так как я хочу использовать официальные изображения postgres из Docker Hub.
Мой вопрос: если контейнер определяет разрешения, которые уже существуют на хосте, как вы сопоставляете разрешение от хоста к контейнеру без необходимости перестраивать сам контейнер с конфигурацией из вашей среды?
Если я неправильно понимаю вещи или не в порядке, как правильно обойти эту проблему?