Polkadot SDK 平行链模板搭建全流程指南
Polkadot SDK平行链开发指南摘要:本文详细介绍如何使用Polkadot SDK官方模板快速搭建平行链系统。教程涵盖环境配置(需Rust 1.86)、工具链安装(包括ChainSpecBuilder和OmniNode)、模板项目结构解析、Runtime编译流程,以及本地节点启动和Polkadot.js交互方法。通过该模板,开发者可专注于业务逻辑开发,避免重复基建工作,最终获得一个可定制、可
原文作者:PaperMoon团队
Polkadot SDK 提供了多种官方模板,用于帮助开发者快速构建属于自己的区块链系统。这些模板覆盖了从极简配置到功能完善环境的不同需求,开发者可以根据项目特点选择合适的基础架构。
其中,Parachain Template(平行链模板) 内置了常用的 Runtime 配置与 Pallet 组件,是当前大多数平行链项目的推荐起点。
通过使用该模板,开发者可以:
• 快速搭建完整的区块链运行环境
• 专注于业务逻辑开发
• 避免重复基础设施建设工作
本文将完整讲解如何从零开始搭建并运行 Polkadot SDK 平行链模板,包括:
• 安装与环境配置
• 模板下载与结构解析
• 编译 Runtime
• 本地运行平行链
• 使用 Polkadot.js 进行交互
完成本教程后,你将拥有一个可运行、可定制的平行链开发模板。
环境准备(Prerequisites)
在开始之前,请确保已完成以下准备工作:
1. 完成 Polkadot SDK 安装
请提前完成官方的 Polkadot SDK 安装流程,并确保:
• 已成功安装 Rust
• 相关系统依赖已配置完成
2. 使用指定 Rust 版本
本教程要求使用:
Rust 1.86
较新版本的 Rust 可能与当前模板不兼容。
请按以下步骤配置:
macOS / Ubuntu
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
说明:
• wasm32 目标用于编译 Runtime
• rust-src 用于开发与调试支持
安装 Polkadot SDK 工具链(Utility Tools)
本教程依赖两个核心工具。
Chain Spec Builder(链规范生成工具)
该工具用于生成区块链的网络配置文件(Chain Spec)。
安装命令:
cargo install --locked staging-chain-spec-builder@10.0.0
安装完成后,将生成:
chain-spec-builder
可执行文件。
Polkadot Omni Node(统一节点程序)
Omni Node 是 Polkadot SDK 提供的标准化节点程序,具备:
• Collator 功能
• RPC 服务
• 状态存储
• 本地 Wasm 运行支持
适用于生产环境与开发测试。
安装命令:
cargo install --locked polkadot-omni-node@0.5.0
安装后生成:
polkadot-omni-node
克隆平行链模板(Clone the Template)
下载模板仓库
在终端执行:
git clone https://github.com/paritytech/polkadot-sdk-parachain-template.git parachain-template
2. 进入项目目录
cd parachain-template
至此,你已经获得了官方提供的平行链开发模板工程。
项目结构解析(Explore the Project Structure)
在正式编译前,建议先了解项目结构。
模板采用标准 Polkadot SDK 工程布局:
parachain-template/
├── node/ # 节点实现
├── pallets/ # 自定义模块
├── runtime/ # Runtime 逻辑
├── Cargo.toml # 工作区配置
└── README.md # 文档说明
关键目录说明
1. runtime/
用于定义:
• 状态转换逻辑
• Pallet 组合方式
• 链上功能规则
这是区块链“能力核心”。
2. node/
负责:
• 网络通信
• 数据存储
• 共识管理
• RPC 接口
相当于区块链客户端程序。
3. pallets/
用于开发自定义业务模块,例如:
• NFT 模块
• 资产模块
• 治理模块
所有业务逻辑都在这里实现。
4. Cargo.toml
Rust 工作区配置文件,用于统一管理各模块依赖。
重要说明
Runtime 最终会被编译为 WebAssembly(Wasm)格式,使区块链支持无分叉升级。
节点程序不变,Runtime 可链上更新。
这是 Substrate / Polkadot 架构的核心优势之一。
编译 Runtime(Compile the Runtime)
确认项目结构无误后,开始编译。
1. 执行编译命令
在项目根目录运行:
cargo build --release --locked
参数说明:
• –release:开启优化模式
• –locked:锁定依赖版本
2. 编译提示
首次编译通常需要几分钟到十几分钟,取决于机器性能。
如果需要调试问题,可使用:
cargo build
(debug 模式)
3. 生产环境建议
生产部署时可使用:
--profile production
相比 release 模式,性能可再提升约 15%~30%。
4. 编译产物路径
成功后,Runtime 文件位于:
./target/release/wbuild/parachain-template-runtime/
parachain_template_runtime.compact.compressed.wasm
该文件即链上运行核心程序。
验证编译结果(Verify the Build)
使用以下命令确认文件存在:
ls -la ./target/release/wbuild/parachain-template-runtime/
如果看到:
parachain_template_runtime.compact.compressed.wasm
说明构建成功。
本地运行平行链节点(Run the Node Locally)
接下来启动本地开发链。
启动流程分为两步:
1. 生成 Chain Spec
2. 启动 Omni Node
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
参数说明:
• -t development:开发模式
• –relay-chain paseo:使用 Paseo 测试中继链
• –para-id 1000:平行链 ID
• –runtime:指定 Wasm 文件
执行后生成:
chain_spec.json
2. 启动节点
运行:
polkadot-omni-node --chain ./chain_spec.json --dev
3. –dev 模式说明
该模式具备以下特性:
• 停止时自动清理数据
• 不保留区块历史
• 保证每次启动环境一致
适合开发测试阶段使用。
使用 Polkadot.js 与节点交互(Interact with the Node)
节点启动后,默认监听地址:
ws://localhost:9944
1. 打开 Polkadot.js Apps
访问:
https://polkadot.js.org/apps
点击左上角网络图标。

2. 切换到本地节点
操作步骤:
1. 滚动到底部
2. 选择 Development
3. 选择 Custom
4. 输入:
ws://localhost:9944

5. 点击 Switch
3. 连接成功标志
左上角显示:
parachain-template-runtime

说明连接成功。
4. 可执行操作
连接后,你可以:
• 浏览区块
• 发送交易
• 调用 Pallet
• 管理账户
• 调试功能
这是调试平行链的重要工具。
停止节点(Stop the Node)
开发完成后,可关闭节点。
操作步骤:
1. 返回运行终端
2. 按下:
Ctrl + C
3. 等待进程退出
由于使用了 –dev 参数,所有链数据将被自动清理。
总结(Conclusion)
通过本教程,你已经完成了:
✅ Polkadot SDK 环境配置
✅ 工具链安装
✅ 官方平行链模板部署
✅ Runtime 编译
✅ 本地节点启动
✅ Polkadot.js 连接调试
这意味着你已经具备:
👉 开发独立平行链的基础能力
👉 定制 Runtime 与 Pallet 的技术基础
👉 搭建测试网络的完整经验
该模板可作为后续所有 Polkadot 项目的起点。
原文链接:https://docs.polkadot.com/parachains/launch-a-parachain/set-up-the-parachain-template/
更多推荐


所有评论(0)