本文是 Substrate 一键发链的极简教程

因为 Substrate 仍然在快速迭代中,所以以下方法只针对下面的版本有效

测试日期:2019/6/9
Substrate 版本:substrate 2.0.0-43164e24-x86_64-macos

安装 Substrate(Mac)

国内安装受网速限制会比较慢,而且可能超时,如果报错,重新执行即可

curl https://getsubstrate.io -sSf | bash

测试是否安装成功

打开一个新的命令行窗口,输入下面的命令,如果返回版本号,就是安装成功了

substrate --version

启动本地测试网络

执行下面的命令,启动本地的测试网

substrate --dev

测试钱包和浏览器

打开下面的链接
https://polkadot.js.org/apps

在 Settings 中将 endpoint 修改为:Local Node (127.0.0.1:9944)
该工具会连接到本地的测试Substrate网络,然后你可以使用这个工具看到网络状况、创建钱包等

polkadot-js-settings

本地数据文件(Mac)

如果需要从零启动一条新的链,进入下面的目录,删除里面的内容

cd ~/Library/Application\ Support/Substrate/chains

以上就是用 Substrate 一键发链的过程,当然后续还会有一些其他操作,比如加入节点等等,我们再之后的教程里面再继续。

first-transfe


下面讲述如何在本地运行3个节点加入的 Substrate 区块链。

Node1 – Alice

打开一个命令行窗口,输入

substrate --dev \
--base-path /tmp/alice \
--chain=local \
--alice \
--node-key 0000000000000000000000000000000000000000000000000000000000000001 \
--telemetry-url ws://telemetry.polkadot.io:1024 \
--validator

Node2 – Bob

新打开一个命令行窗口,输入

substrate --dev \
--base-path /tmp/bob \
--bootnodes /ip4/127.0.0.1/tcp/30333/p2p/QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR \
--chain=local \
--bob \
--port 30334 \
--telemetry-url ws://telemetry.polkadot.io:1024 \
--validator

Node3 – Dave

再新打开一个命令行窗口,输入

substrate --dev \
--base-path /tmp/dave \
--bootnodes /ip4/127.0.0.1/tcp/30333/p2p/QmRpheLN4JWdAnY7HGJfWFNbfkQCb6tFf4vvA6hgjMZKrR \
--chain=local \
--dave \
--port 30335 \
--telemetry-url ws://telemetry.polkadot.io:1024 \
--validator

查看出块情况

当命令行显示开始出块后,说明连接成功

访问下面的地址可以看到节点连接情况,和最新高度等信息
https://polkadot.js.org/apps/#/explorer/node

3nodes


本文介绍如何通过 Docker 安装最新版的 Polkadot,并连接测试网 Alexander
Docker的安装方式不需要下载代码和编译,比较简单快捷

安装 Docker

具体步骤根据操作系统查看 https://docs.docker.com/install/

查看最新的 Polkadot Docker 文件

访问 https://hub.docker.com/r/chevdor/polkadot/tags/

在本文中我们使用的 0.4.4 版本

Screen Shot 2019-06-17 at 16.59.35

安装该版本的 Polkadot

docker run --rm -it chevdor/polkadot:0.4.4 polkadot --version

完成后,可以使用下面的命令开始运行节点,记得把 YourNodeName 改成自己想要的名字

docker run --rm -i -p 30333:30333 -p 9933:9933 -v /tmp/polkadot-data/:/data chevdor/polkadot:0.4.4 polkadot --name "YourNodeName"

在 Telemetry 监控节点情况

如果一些顺利,打开下面的网址就可以找到你的节点了
https://telemetry.polkadot.io/#/Alexander

Screen Shot 2019-06-17 at 17.02.11