0

使用 docker 容器设置默认的 chainlink 节点。我决定在另一个 docker 容器上启动我的 postgresql,我正在尝试将它用作节点的默认数据库,目前我正试图弄清楚为什么我的 postgresql 数据库似乎拒绝我的连接我收到了这个错误下面,我已经确认我的 postgresql 容器在 localhost 5432 上正确运行,但错误似乎要我在某处编辑一些配置文件以允许访问以建立连接,但我不确定那在哪里或是否是这种情况? 抱歉,我现在是 docker 新手

[ERROR] failed to initialize database, got error failed to 
connect to `host=192.168.1.198 user=postgres database=postgres`:
server error (FATAL: no pg_hba.conf entry for host "192.168.1.198",
 user "postgres", database "postgres", SSL off (SQLSTATE 28000))

这是我正在遵循的 docker run 命令-> https://docs.chain.link/docs/running-a-chainlink-node/

docker run -p 6688:6688 -v -it --env-file=.env smartcontract/chainlink:0.10.11 local n

这是通过上述命令创建节点容器时访问的实际 .env 文件,作为参考,我从与 .env 文件相同的目录运行命令


ROOT=/chainlink
LOG_LEVEL=debug
MIN_OUTGOING_CONFIRMATIONS=2
ETH_CHAIN_ID=4
LINK_CONTRACT_ADDRESS=xxxxxxxxxxxxxxxxxxxxxxx
CHAINLINK_TLS_PORT=0
SECURE_COOKIES=false
GAS_UPDATER_ENABLED=true
FEATURE_FLUX_MONITOR=true
ALLOW_ORIGINS=*
DATABASE_URL=postgresql://postgres:somePassword@192.168.1.198:5432/postgres?sslmode=disable
ETH_URL=wss://ropsten.infura.io/ws/v3/xxxxxxxxxxxxxxxxxxxxxxx
DATABASE_TIMEOUT=0

4

1 回答 1

0

该错误似乎要我在某处编辑一些配置文件以允许访问以建立连接,但我不确定那在哪里或是否是这种情况

Yespg_hba.conf是 postgres 用于控制客户端身份验证的文件。您必须对其进行编辑以允许远程客户端与之交谈。

对于开发环境,您必须善于允许所有.

虽然,我会先尝试在同一个 docker 网络中运行这两个容器,保持pg_hba.conf原样。我的猜测是官方的 postgres 图像允许来自同一网络的流量。

此处此处的更多资源(请参阅 POSTGRES_HOST_AUTH_METHOD)

于 2021-08-20T01:59:03.367 回答