如何将Substrate区块链部署为测试网络?相关配置操作疑问
问题1解答:是否需要自行托管polkadot/apps服务
不需要必须自行托管,你可以直接用官方polkadot.js应用手动添加你的测试网RPC地址,添加后会自动归入自定义测试网络分类。
如果你希望你的链默认出现在所有用户的TEST NETWORKS分类列表中,有两种可选方案:
- 提交PR到polkadot.js/apps官方仓库,将你的链信息添加到预设网络列表,审核通过后所有用户都可以直接看到
- 自行托管修改后的polkadot/apps服务,适合需要自定义应用功能、不希望等待官方PR审核的场景
问题2解答:测试网部署的启动命令调整
--dev --tmp是本地单节点开发场景专用参数,不适合多节点测试网部署,你需要先生成自定义链规范,再按以下规则调整启动参数:
- 首先生成自定义链规范(配置你的测试网基础信息、预分配地址、引导节点等):
# 生成基础链规范文件 ./target/release/node-template build-spec --chain local --disable-default-bootnode > custom-testnet.json # 生成兼容性更好的原始格式链规范,所有节点统一使用该文件 ./target/release/node-template build-spec --chain custom-testnet.json --raw > custom-testnet-raw.json
- 测试网节点通用启动命令示例:
./target/release/node-template \ --chain ./custom-testnet-raw.json \ --name "你的测试网节点名称" \ --port 30333 \ --rpc-port 9933 \ --ws-port 9944 \ --rpc-cors all \ --validator \ --base-path /data/你的节点数据存储路径 \ --telemetry-url "wss://telemetry.polkadot.io/submit/ 0" \ --bootnodes /ip4/你的引导节点公网IP/tcp/30333/p2p/引导节点PeerID
核心参数说明:
- 去掉
--dev:该参数会启用单节点开发模式,自动配置临时验证人、即时出块,不适合多节点网络 - 去掉
--tmp:该参数会把节点数据存在临时目录,进程重启后数据全部丢失,正式测试网需要用--base-path指定固定存储路径 - 新增
--chain:指定你自定义的测试网链规范,保证所有加入网络的节点配置一致 - 新增
--validator:如果是验证人节点需要加该参数,同步节点可以去掉
相关参考截图:
内容的提问来源于stack exchange,提问作者Jitterbug
相关产品推荐
相关产品推荐

