原文作者:PaperMoon团队


介绍

Polkadot SDK 提供了一个灵活且可扩展的区块链开发框架,使你能够根据具体的应用或业务需求创建定制化区块链。

本教程将引导你使用 Polkadot SDK Parachain Template 编译并运行一个平行链节点。

该平行链模板提供了一个预配置且可直接使用的运行时(runtime),可用于本地开发环境。模板中包含多个关键组件,例如用户账户和账户余额。

这些预置元素让你无需修改模板即可实验常见的区块链操作。在本教程中,你将完成以下内容:
    •    构建并启动一个本地平行链节点(基于 node template)
    •    学习如何通过前端界面:
    •    查看区块链活动信息
    •    提交一笔交易

前置条件

在开始之前,请确保你已经完成以下步骤:
    •    已完成《Install Polkadot SDK Dependencies》指南,并成功安装 Rust 及搭建开发环境所需的依赖包
    •    本系列教程必须使用 Rust 1.86。更新版本的编译器可能无法兼容该版本的平行链模板

macOS代码1, Ubuntu代码2

rustup install 1.86
rustup default 1.86
rustup target add wasm32-unknown-unknown --toolchain 1.86-aarch64-apple-darwin
rustup component add rust-src --toolchain 1.86-aarch64-apple-darwin
rustup toolchain install 1.86.0
rustup default 1.86.0
rustup target add wasm32-unknown-unknown --toolchain 1.86.0
rustup component add rust-src --toolchain 1.86.0

工具

本教程需要两个关键工具:

1. Chain spec builder

Chain spec builder 是 Polkadot SDK 提供的工具,用于生成链规范(chain specification)。详细用法请参考 Generate Chain Specs 文档。

通过以下命令安装:

cargo install --locked staging-chain-spec-builder@10.0.0

2. Polkadot Omni Node

Polkadot Omni Node 是 Polkadot SDK 提供的白标(white-labeled)二进制程序,可在生产环境中作为平行链的 collator 节点运行,具备完整的辅助功能,例如:
    •    RPC 服务器
    •    状态归档
    •    网络与共识相关组件

此外,它还可以在本地运行平行链的 wasm 文件,用于测试和开发。

安装命令如下:

该命令会安装 chain-spec-builder 可执行文件。

cargo install --locked polkadot-omni-node@0.5.0

该命令会安装 polkadot-omni-node 二进制文件。

编译 Runtime

Polkadot SDK Parachain Template 提供了一个开箱即用的开发环境。请按照以下步骤编译 runtime:
    1.    克隆模板仓库:

git clone -b v0.0.4 https://github.com/paritytech/polkadot-sdk-parachain-template.git parachain-template

    2.    进入项目目录:

cd parachain-template

    3.    编译 runtime:

cargo build --release --locked

提示(Tip)
    •    初次编译可能需要几分钟,具体取决于你的机器性能
    •    使用 release 相比默认的debug 构建可以获得更好的运行时性能
    •    如需排查问题,debug 构建提供更清晰的诊断信息
    •    在生产环境中,可考虑使用profile production,相比 release 可额外提升约 15–30% 的性能

成功后,你将看到类似如下输出:

Finished release profile [optimized] target(s) in 1.79s

启动本地链

成功编译后,你可以启动一个本地链并开始产块。该过程将启动你的本地平行链,并允许你与其交互。

首先需要生成一个链规范(chain spec),用于定义网络身份、初始连接以及创世状态。然后运行该链。

启动步骤如下:
    1.    生成平行链的链规范文件:

chain-spec-builder create -t development \
--relay-chain paseo \
--para-id 1000 \
--runtime ./target/release/wbuild/parachain-template-runtime/parachain_template_runtime.compact.compressed.wasm \
named-preset development

    2.    使用生成的 chain spec 启动 omni node(开发模式,不连接 relay chain):

polkadot-omni-node --chain ./chain_spec.json --dev

dev 参数的作用包括:
    •    停止节点时删除所有数据(密钥、区块数据库、网络信息等)
    •    每次重启节点都确保一个干净的状态

验证节点是否正常运行

查看终端输出,你应该能看到类似如下内容:

(日志略,内容与原文一致)

只要你看到 finalized #X 的区块高度在不断增长,就说明你的区块链正在正常出块。

与节点交互

当模板节点运行时,默认可通过以下地址访问:

ws://localhost:9944

你可以使用 Polkadot.js Apps 前端界面与节点交互:
    1.    打开 Polkadot.js Apps


    2.    点击左上角网络图标(Polkadot logo)
    3.    连接到本地节点:
    •    滚动到最底部,选择 Development
    •    选择 Custom


    •    在输入框中输入:ws://localhost:9944
    •    点击 Switch

验证连接
    •    左上角显示 parachain-template-runtime
    •    界面中会展示本地区块链的相关信息

现在你已经成功连接到本地节点,可以通过 Polkadot.js Apps:
    •    浏览区块
    •    提交交易
    •    调用链上功能

如需深入了解该界面的使用方式,请参考 Polkadot Wiki 中的 Polkadot.js Guides。

停止节点

当你完成本地节点的探索后,可以停止节点并清除状态数据。

由于你是通过 --dev 模式启动节点的,停止节点后所有区块数据都会被清除,下次可从干净状态重新开始。

停止步骤:
    1.    回到显示节点日志的终端窗口
    2.    按下 Control-C
    3.    确认终端返回到 parachain-template 目录的命令行提示符

到此为止,你已经完成了部署一条区块链的第一个关键阶段:让链真正跑起来。
更具体地说,你已经做到:
    •    基于 Polkadot SDK Parachain Template 成功编译了一个完整的区块链 runtime
    •    生成了属于你这条链的 chain spec(创世配置),明确了链的身份、paraId 和初始状态
    •    启动了一个可以持续产块的本地平行链节点
    •    通过 Polkadot.js Apps 成功连接到链,并验证了链是可交互、可调用的

此时,你的链已经具备了最基本但也是最重要的能力:
    •    有运行中的共识与区块生产
    •    有状态、账户和余额
    •    有 RPC 接口和前端交互入口

下一篇文章我们会介绍更重要的事,真正决定「这条链是做什么的」。

原文链接:https://docs.polkadot.com/tutorials/polkadot-sdk/parachains/zero-to-hero/set-up-a-template/

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐