子流 > Developing
3 分钟
子流开发容器
用子流开发容器开发您的第一个项目。
什么是开发容器?
这是一个帮助您构建第一个项目的工具。 您可以通过Github 代码远程运行它,也可以通过本地克隆substreams starter 仓库。
在开发容器中,substreams init
命令设置代码生成的子流项目。 允许您为数据处理轻松构建子图或基于 SQL 的解决方案。
先决条件
- 确认 Docker 和 VS 代码是最新的。
导航开发容器
在开发容器中,您可以构建或导入您自己的substreams.yaml
和关联模块在最小路径内或选择自动生成的子流路径。 然后,当你运行 Substreams Build
时,它将生成Protobuf 文件。
选项
- Minimal:用原始块
.proto
启动,需要开发。此路径是为有经验的用户设计的。 - Non-Minimal:从相应的基础模块中提取网络特定缓存和 Protobufs 的过滤数据(由 StreamingFast 团队维护)。 此路径从方框生成一个工作的子流。
要与更广泛的社区分享您的工作,使用以下方式发布您的.spkg
到 Substreams registry :
substreams 注册表登录
substreams 注册表发布
注意:如果你遇到了开发容器中的任何问题,请使用 help
命令访问故障射击工具。
为您的项目建立一个汇
您可以配置您的项目,通过子图或直接从 SQL 数据库查询数据:
- Subgraph: 运行
substreams codegen subgraph
。这将生成一个基本的schema.graphql
和mappings.ts
文件。 您可以根据子流提取的数据定制这些定义实体。关于更多配置,请参阅Subgraph sink 文档。 - SQL: 为基于 SQL 查询运行
substreams codegen sql
。欲了解更多配置SQL sink 的信息,请参阅SQL 文档。
部署选项
部署子图, 您可以使用 depay-local
命令在本地运行 graph-node
,也可以使用在package.json
文件中找到的design
命令部署到Subgraph Studio 。
常见错误
- 当本地运行时,请确保通过运行 `dev-status’ 命令来验证所有Docker容器是否健康。
- 如果你在生成项目时设置了错误的起始块,导航到
substreams.yaml
来更改模块号码,然后重新运行 `substreams build’。