总而言之,我正在尝试通过 Docker 在 Azure VM 上运行 Chainlink 节点。我还创建了一个 Azure Postgresql DB 并验证了 VM 能够通过 psql cli 进行连接。
我为使节点运行而采取的步骤(遵循此链接):
创建 Azure 虚拟机
安装泊坞窗
mkdir ~/.chainlink-rinkeby
创建 .env 文件
通过外部提供者设置 ETH_URL
在此链接之后创建 Postgres SQL 数据库
使用 sslmode=disable 设置远程 Database_Url 配置
使用以下命令启动节点:
cd ~/.chainlink-rinkeby && docker run -p 6688:6688 -v ~/.chainlink-rinkeby:/chainlink -it --env-file=.env smartcontract/chainlink local n
我的 .env 文件:
"ROOT=/chainlink LOG_LEVEL=debug ETH_CHAIN_ID=4 MIN_OUTGOING_CONFIRMATIONS=2 LINK_CONTRACT_ADDRESS=0x01BE23585060835E02B77ef475b0Cc51aA1e0709 CHAINLINK_TLS_PORT=0 SECURE_COOKIES=false GAS_UPDATER_ENABLED=true ALLOW_ORIGINS=*"
"ETH_URL=wss://cl-rinkeby.fiews.io/v1/MY_API_KEY"
"DATABASE_URL=postgresql://MY_USER_NAME:MY_PASSWORD@MY_DATABASE_nAME.postgres.database.azure.com:5432/postgres?sslmode=disable"
错误:
[ERROR] unable to lock ORM: dial tcp 127.0.0.1:5432: connect: connection refused logger/default.go:139 stacktrace=github.com/smartcontractkit/chainlink/core/logger.Error
我也尝试在 chainlink 启动命令中提供 0.10.8 版本,但我得到的错误是:
[ERROR] failed to initialize database, got error failed to connect to `host=/tmp user=root database=`: dial error