本文档提供了 Base 节点架构的详细说明,展示了组件之间的关系以及数据如何在系统中流动。它描述了 Base 节点的技术结构,该节点运行在 Base 网络上——一个构建在 Optimism OP Stack 之上的以太坊 Layer 2 扩容解决方案。
有关 Base 关键概念和术语的信息,请参阅 关键概念。有关安装和设置的信息,请参阅 入门。
Base 节点包含两个主要组件,它们协同工作以运行一个功能性的 Base L2 节点。
这些组件被打包成 Docker 容器,并通过 Docker Compose 进行编排,或者可以使用 supervisord 在单个容器中运行。
来源:README.md5-7 docker-compose.yml1-32 supervisord.conf1-19
op-node 负责
op-node 是 Base 节点架构中的“共识客户端”,类似于以太坊有独立的共识和执行客户端。
执行客户端负责
Base 节点支持三种执行客户端。
来源:README.md75-78 docker-compose.yml2-16 docker-compose.yml17-31
Base 节点是一个使用 Docker 实现的容器化应用程序。支持两种主要方法:
在 Docker Compose 设置中,定义了两个服务:
每个服务都基于所选客户端(Geth、Reth 或 Nethermind)从同一个 Dockerfile 构建,但运行不同的入口点脚本。
来源:docker-compose.yml1-32 README.md55-69
对于多容器不适用的环境(例如 Kubernetes),可以使用 supervisord 在单个容器中运行这两个服务。
来源:supervisord.conf1-19 README.md96-106
Base 节点暴露多个网络端点用于不同目的:
来源:docker-compose.yml7-11 docker-compose.yml23-28 README.md80-85
Base 节点的数据流遵循从 L1 到 L2 的特定路径。
Base 节点的主要配置通过环境变量管理,网络特定的默认值包含在 .env 文件中。
Base 节点支持两个网络:
网络配置通过 NETWORK_ENV 环境变量选择,该变量指向相应的 .env 文件。
来源:README.md48-54 README.md57-64 docker-compose.yml15-16 docker-compose.yml30-31
Base 节点将数据持久化到可配置的主机目录中,该目录可在 .env 文件中指定。
来源:README.md89-94 docker-compose.yml13-14
Base 节点与多个外部系统交互以正常运行。