【发布时间】:2019-08-30 03:21:36
【问题描述】:
我正在尝试使用 PostGres 作为数据库运行 rundeck 的 docker 映像。
我遇到的问题是将我的本地 postgres 安装映射到 docker rundeck 映像。 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
我猜是因为内部 5432 端口没有映射到 docker 容器端口 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 作为 docker 镜像运行,但我更愿意解决这个问题。
关于如何将本地 PostGres 映射到 docker run Rundeck 的任何想法?
【问题讨论】:
标签: postgresql docker rundeck