本文档提供了Base Node存储库的介绍。该存储库包含运行Base网络节点的Docker构建和配置。Base是基于Optimism的开源OP Stack构建的安全、低成本、对开发者友好的以太坊Layer 2 (L2) 扩展解决方案。
有关详细的架构信息,请参阅架构。有关设置和运行节点的说明,请参阅入门。
Base Node允许用户在Base网络上运行自己的节点,从而无需依赖第三方服务提供商即可直接访问Base区块链。该存储库提供了一个基于Docker的设置,该设置编排了必要的组件来同步和维护Base区块链的本地副本。
来源:README.md3-7 docker-compose.yml1-32
Base Node包含两个主要组件,每个组件运行在自己的Docker容器中(或者通过supervisord在一个容器中运行)。
op-node:负责从以太坊L1数据和排序器广播派生Base L2链。它充当以太坊L1和Base L2网络之间的桥梁。
执行客户端:在Base L2链上处理和执行交易。Base Node支持三种执行客户端:
来源:README.md55-86 docker-compose.yml1-32
Base Node实现了分层架构,其中op-node组件从L1数据派生L2区块,执行客户端处理这些区块以维护L2状态。组件通过Engine API进行通信,Engine API是以太坊权益证明过渡期间开发的标准化接口。
来源:README.md114-122 docker-compose.yml1-32
Base Node使用Docker Compose进行部署,Docker Compose负责编排容器并管理其配置。该存储库为主网和Sepolia测试网环境提供了配置文件。
来源:docker-compose.yml1-32 README.md55-95
为了高效运行Base Node,建议以下硬件和软件要求:
| 组件 | 建议 |
|---|---|
| CPU | 具有良好单核性能的现代多核处理器 |
| 内存 | 最低16 GB (推荐32 GB) |
| 存储 | NVMe SSD,至少 (当前链大小 * 2) + 快照大小 + 20% 缓冲 |
| 网络 | 稳定的互联网连接 |
| 软件 | Docker 和 Docker Compose |
| 外部 | 访问以太坊 L1 全节点 RPC |
Base Node支持以下网络:
| Base 网络 | 状态 |
|---|---|
| 主网 | ✅ |
| 测试网 (Sepolia) | ✅ |
运行时,Base Node会暴露几个用于交互的接口。
来源:docker-compose.yml2-31 README.md80-86
Base Node系统可以通过两种方式部署:
多容器设置 (使用Docker Compose):每个组件运行在一个单独的容器中,容器间通过网络通信。
单容器设置 (使用Supervisord):两个组件都运行在由Supervisord管理的单个容器中,通过进程间通信。
来源:supervisord.conf1-19 README.md96-106
理解Base Node中的数据流有助于掌握L2链是如何维护的。
本概述为理解Base Node系统提供了基础。有关特定组件和使用说明的更多详细信息,请参阅本文档的其他部分。