【问题标题】:Docker Rundeck + local PostgresDocker Rundeck + 本地 Postgres
【发布时间】: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


    【解决方案1】:

    找到答案。

    必须编辑 pg_hba.conf 文件以允许 docker0 ip 地址通过。

    host    all             all             172.23.0.0/16           md5
    

    【讨论】:

      猜你喜欢
      • 2014-10-21
      • 2020-02-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-13
      • 2022-11-20
      相关资源
      最近更新 更多