链链节点:我该如何修复"unable to lock ORM"错误?



我对设置链接节点的过程并不太熟悉。我今天已经这样做了,但是遇到了一个问题。在最后一步,当尝试启动链接节点时,我将以下内容放入命令行:

cd ~/.chainlink-kovan && docker run -p 6688:6688 -v ~/.chainlink-kovan:/chainlink -it --env-file=.env smartcontract/chainlink local n

当这个运行时,所有的pull都说";"拉完";

我得到以下ORM错误:

2020-10-15T22:07Z〔错误〕无法锁定ORM:拨号tcp127.0.0.1:5432:连接被拒绝logger/default.go:139
stacktrace=github.com/smartcontrac
tkit/chainlink/core/logger.Error

/usr/local/go/src/runtime/proc.go:203 2020-10-15T22:00Z[FATAL]无法初始化ORM:拨号tcp 127.0.0.1:5432:
连接:连接被拒绝无法打开gorm DB

我不确定可能是什么问题。有人能为我指出调试这个问题的方向吗?

[ERROR] unable to lock ORM是当无法访问数据时给出的默认消息,并且它也看不到另一个带锁的用户。你可以看到它无法连接到ORM的原因是:dial tcp 127.0.0.1:5432: connec t: connection refused要修复,你可以尝试许多不同的方法:

1.尝试使用DATABASE_URL的参数访问postgress数据库

如果您不能使用DATABASE_URL的参数进入DB,则可能存在问题。您可以通过下载psql客户端来查看是否可以进行连接。如果在ubuntu上你可以使用:

sudo apt-get update
sudo apt-get install postgresql-client

然后运行类似psql -h IP_HERE -U USER_HERE的程序,然后输入您的密码

2.为本地数据库添加--network host

如果您在本地运行节点/数据库,则必须将--network host添加到chainlink docker命令中。

3.尝试localhost172.17.0.1,或者如果您使用的是mac,则使用云数据库

Docker在IP方面有点棘手。如果您正在运行本地数据库,并且尝试使用127.0.0.1,则可能需要尝试localhost。在mac上,你会遇到问题,因为docker网关不能很好地与macos配合使用,而简单的解决方法是从heroku、GCP或AWS等云数据库中获取数据库URL。

如果这些都不适合你,请添加评论,我们可以更新这个答案。

在查看了Patrick的视频后,我注意到我正在复制公共IP,而事实上,来自GCP的私有IP正是你需要在命令中使用的来运行docker

最新更新