Nervos x Gitcoin bounty 任务0: 设置测试网上的 CKB 节点和 CKB 索引器

  • Nervos
  • 更新于 2021-09-02 11:40
  • 阅读 216

在开始深入到更复杂的任务之前,您需要设置一个 CKB 节点 和 CKB 索引器(indexer)。这两个节点软件将会协同运作以支持 dApp 开发的需求。在往后我们使用的脚本会和测试网交互,并且依赖这些节点所提供的网络状态。

在开始深入到更复杂的任务之前,您需要设置一个 CKB 节点CKB 索引器(indexer)。这两个节点软件将会协同运作以支持 dApp 开发的需求。在往后我们使用的脚本会和测试网交互,并且依赖这些节点所提供的网络状态。

您可以在本地运行节点,也可以使用公共节点。Nervos 基金会托管了用于 Gitcoin 任务的公用测试网节点,您可以在本页底部找到它们的链接。但是,我们还是建议运行本地节点 ,因为与公共节点的同步会比使用本地节点慢得多。

在设置节点时,可以选择使用主网测试网开发用网络。在此我们将使用测试网,因为这是需要最少设置的测试环境。

Nervos 的测试网,也被称为“Aggron”,是 Nervos 对外开放的测试环境。这是一个共享的测试环境,在这里还包含了在主网上还不能看的到的新基础设施。测试网上的通证和资产没有价值,所以您可以在这里安全地进行测试,而不必担心任何资金损失。

设置与需求

在开始之前,您需要设置您的开发环境。如果您还没有完成任务设置和要求页面上的说明,请现在就完成。

任务说明

注意:在开始任务之前,建议您检查任务提交这个部分,这样您就知道您需要提供哪些材料给评审,以便于审查您的任务提交。

在本次任务中,你将会设置一个本地 CKB 节点以及本地的 CKB 索引器,来使用 Aggron 测试网。过程如下:

  1. 设置一个本地的 CKB 节点,并且为测试网配置这个节点并与整个网络完成同步。
  2. 设置一个本地的 CKB 索引器,并且使它和本地的 CKB 节点完全同步。

注意:为了设置节点,您将需要大约 20GB 的磁盘空间和至少 2 个 CPU 核。如果您无法满足这些要求,您仍然可以使用公共节点参与其他几个任务,但您将不会因为完成此任务而获得积分。

项目文件夹

稍后我们的说明会提到把文件安装在用户的首页文件夹下的 projects 目录中。创建一个 projects

目录是可选项,但是它可能对你运行整体的任务有帮助,因为我们稍后将安装更多的工具。

Linux/MacOS 命令行语句:

mkdir -p ~/projects
cd ~/projects

Windows (PowerShell) 命令行语句:

New-Item -ItemType Directory -Force -Path ~/projects
cd ~/projects

1.设置节点

为了设置 CKB 测试网节点,请参照这个教程指引的步骤。一旦节点已经开始运行,他将会大概花五个小时以上来完全同步整个网络,但是你可以通过 CKB.tools 中的 CKB 节点的 Bootstrap 来加速这个过程。

首先,请先在 CKB Node Release 页面下载 CKB 0.43.1 版的二进制文件,或者使以下的命令行来安装

Linux 命令行语句:

cd ~/projects
curl -LO <https://github.com/nervosnetwork/ckb/releases/download/v0.43.1/ckb_v0.43.1_x86_64-unknown-linux-gnu.tar.gz>
tar xzf ckb_v0.43.1_x86_64-unknown-linux-gnu.tar.gz
mv ckb_v0.43.1_x86_64-unknown-linux-gnu ckb_v0.43.1

MacOS 命令行语句:

cd ~/projects
curl -LO <https://github.com/nervosnetwork/ckb/releases/download/v0.43.1/ckb_v0.43.1_x86_64-apple-darwin.zip>
unzip ckb_v0.43.1_x86_64-apple-darwin.zip
mv ckb_v0.43.1_x86_64-apple-darwin ckb_v0.43.1

Windows (PowerShell) 命令行语句:

cd ~/projects
Invoke-WebRequest <https://github.com/nervosnetwork/ckb/releases/download/v0.43.1/ckb_v0.43.1_x86_64-pc-windows-msvc.zip> -OutFile ckb_v0.43.1_x86_64-pc-windows-msvc.zip
Expand-Archive .\\ckb_v0.43.1_x86_64-pc-windows-msvc.zip
New-Item -ItemType Directory -Force -Path .\\ckb_v0.43.1
Get-ChildItem -Path .\\ckb_v0.43.1_x86_64-pc-windows-msvc\\ckb_v0.43.1_x86_64-pc-windows-msvc\\ -Recurse -File | Move-Item -Destination ckb_v0.43.1
Get-ChildItem -Path .\\ckb_v0.43.1_x86_64-pc-windows-msvc\\ -Recurse -Directory | Remove-Item -Recurse
.\\ckb_v0.43.1\\ckb.exe

并开始初始化 Aggron 测试网:

cd ~/projects/ckb_v0.43.1
./ckb init --chain testnet

如果您想启动节点并从创世区块开始同步整条链,请使用下面的命令启动节点。如果您想使用上方提到的加速工具,您可以跳过现在这一步,并且继续执行加速工具的引导指令。

cd ~/projects/ckb_v0.43.1
./ckb run

关于 bootstrap 加速工具的基础介绍可见于 CKB.tool,但是你也可以使用这个方便的脚本来自动化这个过程。如果你的 ckb 已经开始运行,按下 crtl+c 来停止他,并且执行以下的指令

cd ~/projects/ckb_v0.43.1 # Your folder name may be different.
curl -sSf <https://raw.githubusercontent.com/Kuzirashi/gw-gitcoin-instruction/master/scripts/install_ckb_node_snapshot_data.sh> | sh

下载并解压缩后,可以使用以下命令启动节点。

cd ~/projects/ckb_v0.43.1
./ckb run

2.设置 CKB 索引器

要设置一个测试网 CKB 索引器,请遵循以下步骤。一旦节点启动,可能需要几个小时才能与 CKB 节点完全同步,但您也可以通过使用 ckb.tool 中的 CKB 索引器的 Bootstrap 来加快这个过程。

首先,从 CKB Indexer Releases 页面下载一个二进制文件。

wget [<https://github.com/nervosnetwork/ckb-indexer/releases/download/v0.2.1/ckb-indexer-0.2.1-linux.zip>](<https://github.com/nervosnetwork/ckb-indexer/releases/download/v0.2.1/ckb-indexer-0.2.1-linux.zip>)

然后,解压 ckb-indexer 目录中的归档文件。

mkdir ckb-indexer
cd ckb-indexer
unzip ../ckb-indexer-0.2.1-linux.zip
tar xzf ckb-indexer-linux-x86_64.tar.gz
chmod 755 ckb-indexer

然后将索引器打开

RUST_LOG=info ./ckb-indexer -s ./indexer-data

注意: CKB 索引器要求 CKB节点在开始同步之前运行。

CKB.tool 上有 bootstrap 的基本说明。但是您也可以使用下面这个方便的脚本来自动化这个过程。这个指令将帮你下载快照数据,并将其解压缩到适当的文件夹。如果 ckb-indexer 正在运行,用ctrl+c停止它,然行以下命令。

cd ~/projects/ckb-indexer-0.2.1 # Your folder name may be different.
curl -sSf <https://raw.githubusercontent.com/Kuzirashi/gw-gitcoin-instruction/master/scripts/install_ckb_indexer_snapshot_data.sh> | sh

检查您的节点是否完全同步

一旦您的节点开始运行,它们将首先与网络同步,然后它们将永远保持运行,同时同步新区块。当报告的区块高度与 测试网浏览器 中报告的区块高度相等时,证明您的节点已完全同步了。

本地测试网节点的链接

本地测试网节点运行并同步后,可以使用下面的 url 访问它们,建议收藏以备不时之需:

本地 CKB 节点 RPC URL: http://localhost:8114 本地 CKB Indexer RPC 的 URL: http://localhost:8116

公用测试网节点的链接

Nervos 基金会有托管测试网的公共节点,在 Gitcoin 任务期间都能一起使用。但是,还是建议运行本地节点 ,因为与公共节点的同步比使用本地节点慢得多。从长远来看,使用公共节点并无法节省 您的时间。

如果您因任何原因无法设置节点,则可以使用这些公共节点。如果你不设置节点,将不会获得此任务的积分 ,但仍然可以继续执行其他任务。

CKB 节点RPC URL: http://3.235.223.161:18114 CKB Indexer RPC URL: http://3.235.223.161:18116

任务提交

要完成任务的话,你比需要提交以下素材供评委评审:

  1. 本地测试网 CKB 节点与网络完全同步后的控制台输出画面的截图。
  2. 本地 CKB Indexer 与本地 CKB 测试网节点完全同步后,控制台画面的屏幕截图。

在提交此任务之前,必须等待 CKB 节点和索引完全同步

奉上一些可能对你的 Nervos Layer2 探索之路有帮助的链接

点赞 1
收藏 0
分享

0 条评论

请先 登录 后评论
Nervos
Nervos
Nervos Network 是一个开源的公链生态,包含以区块链技术为核心、相互兼容的一组分层协议,来解决区块链可扩展性上的困境。Nervos CKB 是一条基于 PoW 共识机制的多资产价值存储公链,是加密经济网络安全、可信并且可持续发展的根基,通过「价值存储」的加密经济设计使得原生代币 CKBytes 捕获整个网络的价值。