Skip to content
libbin edited this page Dec 31, 2020 · 1 revision

此文档根据 chainlink 官方文档整理 https://docs.chain.link/docs/running-a-chainlink-node

  1. 安装 docker
curl -sSL https://get.docker.com/ | sh
sudo usermod -aG docker $USER
exit
  1. 拉取镜像
docker pull postgres
docker pull smartcontract/chainlink:0.9.5
  1. 启动数据库
docker run -p 5432:5432 --name some-postgres -e POSTGRES_PASSWORD=mysecretpassword -d postgres

mysecretpassword 是数据库的访问密码,可以自定义。

  1. 部署 Arbiter 合约,Link Token 合约。这步已经完成。
LINK TOKEN : 0x62e7a4ab7bd21dd1440b0622f6ce34f7465d5be8
arbiter : 0xbddc1bac341a7ad26078c5ff85af772e99853a95
  1. 配置 .env
ROOT=/chainlink
LOG_LEVEL=debug
ETH_CHAIN_ID=22
MIN_OUTGOING_CONFIRMATIONS=2
LINK_CONTRACT_ADDRESS=0x62e7a4ab7bd21dd1440b0622f6ce34f7465d5be8
CHAINLINK_TLS_PORT=0
SECURE_COOKIES=false
GAS_UPDATER_ENABLED=true
ALLOW_ORIGINS=*
ETH_URL=http://127.0.0.1:20636
DATABASE_URL=postgresql://postgres:mysecretpassword@172.17.0.2:5432/postgres?sslmode=disable
DATABASE_TIMEOUT=0
ETH_URL 是本机 geth rpc url
DATABASE_URL 是数据库地址,其中 172.17.0.2 是内网ip。需要替换。
  1. 启动 chainlink node
docker run -p 6688:6688 -v ~/.chainlink-ela:/chainlink -it --env-file=.env  smartcontract/chainlink:0.9.5 local n
~/.chainlink-ela 为镜像的映射目录,可以自定义。确保 .env 文件在该目录中。
  1. 部署每个node 的 Oracle 合约。(记录每个节点的 OracleID)

  2. 开端口 6688 给 ac07

  3. 配置每个节点的 jobId。(记录每个节点的 JobID) https://docs.chain.link/docs/fulfilling-requests#add-jobs-to-the-node

  4. 注册 OracleId,jobId 到中间合约。(需要超级节点账户签名)

  5. 完成。

Clone this wiki locally