1

我在 GCP 上运行一个 chainlink 节点,我遵循了 chainlink 文档https://docs.chain.link/docs/running-a-chainlink-node/,我创建了我的虚拟机和一个数据库,SSH 通过谷歌云 SDK 隧道,但是当尝试使用 cd ~/.chainlink-kovan && docker run -p 6688:6688 -v ~/.chainlink-kovan:/chainlink -it --env-file=.env smartcontract/chainlink 连接到我的数据库时: 0.9.8 本地 n 我得到:

在此处输入图像描述

所以我尝试使用 psql 客户端通过 psql -h [address IP] -U [db_user] 连接到实例,但是得到了

Is the server running on host "35.100....16" and accepting
        TCP/IP connections on port 5432?

所以在那之后,我尝试在 GCP 中手动打开端口 5432 但仍然没有...如果我运行 netstat -na 我得到这个:

在此处输入图像描述

如果 DATABASE_URL 正确,我还仔细检查了我的 .env。

设法在 Stack 上找到了一些类似的错误,但到目前为止没有任何帮助。

4

2 回答 2

1

修复了为我的 SQL 数据库设置私有 IP 连接而不是公共 IP 连接的问题,并更改了我的 .env 文件。

于 2021-08-04T07:37:45.177 回答
0

我尝试使用运行 Chainlink 节点 如何在 GCP 上构建简单的 Chainlink 节点来复制场景, 并且我能够启动 Chainlink 节点。
问题在于连接到 PostgreSQL 数据库实例的网络路径;创建数据库时默认为“公共 IP”且没有任何“授权网络”。在使用公共 IP 地址将 Chainlink 节点与数据库连接时,我遇到了同样的错误。这可以通过以下两种方法之一解决:

  1. 如果连接到 PostgreSQL 数据库实例的网络路径是“公共 IP”,则将 VM 的(节点)外部 IP 添加到 PostgreSQL 数据库实例详细信息中的“授权网络”。配置对 Cloud SQL 实例的访问权限以了解更多信息。

  2. 将连接到 PostgreSQL 数据库实例的网络路径更改为使用“默认”网络的“私有 IP”,并在连接节点时使用 PostgreSQL 数据库实例的私有 IP 地址。

于 2021-08-04T07:38:15.973 回答