ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Base Node:自己跑一个以太坊 L2 节点

Base Node:自己跑一个以太坊 L2 节点

文章目录

  • Base Node:自己跑一个以太坊 L2 节点
    • 1、 这东西解决什么问题
    • 2、 需要什么配置
    • 3、 怎么装怎么用
    • 4、 几个关键配置项
    • 5、 快速同步的技巧
    • 6、 遇到问题怎么办
    • 7、 适合谁用

Base Node:自己跑一个以太坊 L2 节点

base/node 在 GitHub 上已经拿到 68.5K Star 了。

Base 是 Coinbase 推出的以太坊 L2 网络,基于 Optimism 的 OP Stack 构建。这个仓库提供了一套 Docker 方案,让你用base-reth-node和base-consensus两个客户端跑起一个完整的 Base 节点。

1、 这东西解决什么问题

跑以太坊 L2 节点这件事,以前门槛不低。你需要自己配执行层客户端、共识层客户端,处理 L1 和 L2 之间的通信,还要搞清楚各种参数怎么填。稍微哪个环节出错,节点就同步不上。

Base Node 把这些全打包了。一个 Docker Compose 命令,执行层和共识层一起启动,L1 的 RPC 和 Beacon 端点配好就能跑。主网和测试网都支持,切换就是换个环境变量的事。

对于想参与 Base 网络验证、做 DApp 后端、或者单纯想自己跑节点不依赖第三方 RPC 的开发者来说,这是目前最省事的方案。

2、 需要什么配置

这不是一个轻量级项目。官方给的最低要求是:

  • 多核 CPU
  • 32GB 内存(推荐 64GB)
  • NVMe 固态硬盘
  • 存储空间:当前链大小的两倍加快照大小,再留 20% 余量
  • Docker 和 Docker Compose

生产环境的配置更高。官方用的是 AWS i7i.12xlarge 实例,所有本地 NVMe 硬盘做 RAID 0,文件系统用 ext4。

说白了,这东西是给有服务器资源的人准备的。想在自己笔记本上跑,基本不现实。

3、 怎么装怎么用

前提是已经有一个以太坊 L1 全节点的 RPC 和 Beacon 端点。没有的话,得先解决这个。

选网络,主网用.env.mainnet,测试网用.env.sepolia。在对应的.env文件里填上 L1 端点:

BASE_NODE_L1_ETH_RPC=<你的L1-RPC地址> BASE_NODE_L1_BEACON=<你的L1-Beacon地址>

然后一条命令启动:

# 主网dockercompose up--build# 测试网NETWORK_ENV=.env.sepoliadockercompose up--build

就这些。执行层跑的是base-reth-node,共识层跑的是base-consensus,两个容器协同工作,自动开始同步区块。

4、 几个关键配置项

主网和测试网的切换靠两个变量:RETH_CHAIN和BASE_NODE_NETWORK。主网都是base,测试网都是base-sepolia。

Flashblocks 模式是个有意思的特性。设置RETH_FB_WEBSOCKET_URL之后,执行客户端会切换到 Flashblocks 模式,可以用 RPC 查询 pending 状态的区块:

curl-XPOST\--data'{"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["pending", false],"id":1}'\http://localhost:8545

不设这个变量,就跑标准模式。两种模式根据实际需求选。

还有 Follow 模式和 Pruning 功能,分别通过BASE_NODE_SOURCE_L2_RPC和RETH_PRUNING_ARGS控制。具体参数看.env.mainnet或.env.sepolia文件里的注释就行。

5、 快速同步的技巧

全量同步一个 L2 节点要花不少时间。官方提供了快照恢复的方式,能大幅缩短同步周期。

快照的获取和恢复步骤在 docs.base.org 的节点运维文档里有详细说明。对于需要快速上线节点的场景,这是必选项。

6、 遇到问题怎么办

官方在 Discord 上开了🛠|node-operators频道,节点运维相关的问题可以在那里提问。也可以直接在 GitHub 上提 Issue。

两个渠道响应速度都不错,毕竟 Base 背后是 Coinbase 的团队在维护。

7、 适合谁用

在 Base 上做 DApp 开发、需要自建节点作为后端的团队。

做区块链基础设施运维、想给 Base 网络提供节点服务的工程师。

对以太坊 L2 技术感兴趣、想亲手跑一个节点看看内部运作方式的开发者。

不建议没有服务器资源或不熟悉 Docker 的人尝试。这个项目的定位很明确,就是给有基础设施能力的团队用的。

以太坊 L2 技术感兴趣、想亲手跑一个节点看看内部运作方式的开发者。

不建议没有服务器资源或不熟悉 Docker 的人尝试。这个项目的定位很明确,就是给有基础设施能力的团队用的。

返回列表