Docker Rundeck + местный Postgres - PullRequest
       16

Docker Rundeck + местный Postgres

0 голосов
/ 09 апреля 2019

Я пытаюсь запустить образ докера rundeck, используя PostGres для базы данных.

Проблема, с которой я сталкиваюсь, заключается в сопоставлении моей локальной установки postgres с образом рабочей среды докера.Порт postgres работает на 5432, и с помощью netstat подтвердил, что порт открыт и прослушивается.Порт для rundeck должен быть запущен на 4440.

Я пробовал следующую команду:

docker run -p 127.0.0.1:4440:4440 -e RUNDECK_DATABASE_URL=jdbc:postgresql://localhost/rundeck -e RUNDECK_DATABASE_DRIVER=org.postgresql.Driver -e RUNDECK_DATABASE_USERNAME=xxx -e RUNDECK_DATABASE_PASSWORD=xxx --name test-rundeck -t rundeck/rundeck:3.0.19 

Но он не работает с ошибкой: Connection to 127.0.0.1:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP

I 'я думаю, это потому, что внутренний порт 5432 не сопоставлен с портом 5432 док-контейнера?

Я попытался сопоставить порты с помощью -p 127.0.0.1:5432:5432, но это не удалось из-за ошибки:

Error starting userland proxy: listen tcp 127.0.0.1:5432: bind: address already in use

В этот момент я мог бы просто прибегнуть к запуску PostGres и Rundeck в качестве образов докеров, но яскорее хотел бы решить эту проблему.

Есть какие-нибудь идеи о том, как сопоставить локальный PostGres с докером, запускающим Rundeck?

1 Ответ

0 голосов
/ 09 апреля 2019

Нашел ответ.

Пришлось отредактировать файл pg_hba.conf, чтобы пропустить IP-адрес docker0.

host    all             all             172.23.0.0/16           md5
...