首页 > 代码库 > AntShares区块链的节点部署与搭建私有链

AntShares区块链的节点部署与搭建私有链

最近陆续体验常见的区块链开源项目,例如小蚁OnChain出的AntShares。AntShares跟其他开源区块链项目不一样,他们家是使用C#开发,基于.NET Core运行在Linux,期待未来出Go语言版....

接下来会详细讲解如何部署AntShares和搭建私有链,本文使用virtualbox + ubuntu + AntSharesCore v1.4.,参考了官方文档。

第一步,安装.net core,如果提示安装失败,则多刷“sudo apt-get update”几次:
sudo sh -c ‘echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ trusty main" > /etc/apt/sources.list.d/dotnetdev.list‘
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
sudo apt-get update
sudo apt-get install dotnet-dev-1.0.0-preview2-003131


验证.net core是否安装成功,跑一下helloworld:

mkdir hwapp
cd hwapp
dotnet new
dotnet restore
dotnet run


第二步,节点部署

先下载并解压缩AntSharesCore(区块链客户端同时也是服务器端)

wget https://github.com/AntShares/AntSharesCore/releases/download/v1.4.5/AntSharesCore-CLI-v1.4.5.zip
unzip  AntSharesCore-CLI-v1.4.5.zip


运行AntSharesDaemon.dll 去初始化。

dotnet AntSharesDaemon.dll activates one bookkeeping node
dotnet AntSharesDaemon.dll /rpc activates one bookkeeping node with rpc server

第三步,准备好4个节点和4个钱包文件
通过  AntSharesCore-GUI-v1.4.6291.25936.zip  生成4个钱包对应4台服务器,强烈建议断网运行这个GUI程序,不然会强制更新到最新的开发版(最新开发版有bug)
钱包1:1.db3
地址:AV1FjFdThXd6UeWPYzM2dmMwnJ79bdZxX1
公钥:03f1d8df48cac340eaaf9ad5dfadac75fb45e2a48ba3c6c63721b340826f3daa18
私钥WIF:L2D1orkQ8s1Ldg1XAQFJC82QcvbamVpex5D9MDDZvYgTjk64qgmE

钱包2:2.db3
地址:AWKxBoutR9VYKm1KhNvSTD5AhbSkDHC1A3
公钥:0313f7d3d34b95d3dcf016d23ad4e22f2b6253dfafc54971cd55f678170f40a735
私钥WIF:KyBv7S411MpSNQfcLqroxLFnQPdQvfjHsHcfGrkDyEVSr1hQjoch

钱包3:3.db3
地址:AYehAbETXbCRC2Hg4Wvy4ns9WcMbmZwYsU
公钥:03cb28efdb867960536aec1d9ba395bbf639888062d6186863756425c741741608
私钥WIF:L4Pe8boDac3Du93pRztcfoecy6S8hokk6nXjXtyttNNBfARWYbAk

钱包4:4.db3
地址:AJvkZbK9qK3uBxQrs56kx19GLuhtoxMDPG
公钥:03a26ef67f370d618c76859723f0c987133bc4d2236c7824e0938a52b6e7d6a6e5
私钥WIF:KxtYtdWh6qbwtGqAEMjhiMfM8Uop3bYvaTTo2JpfoPDBXKypazYp


以上4个钱包文件都存放在一起,后面会把当前虚拟机复制3份

第四步,使用virtualbox的“管理”->全局设定->网络->添加新的NAT网络
技术分享复制出3份虚拟机,共4个虚拟机
修改4个虚拟机的网络设置如下图:
技术分享


4个虚拟机运行后IP地址

1.db3所在服务器的IP:10.0.2.4
2.db3所在的服务器IP:10.0.2.5
3.db3所在的服务器IP:10.0.2.6
4.db3所在的服务器IP:10.0.2.7

第五步,分别修改4个虚拟机的protocol.Json文件
1.将节点文件及钱包文件拷贝至4台服务器中,找到配置文件protocol.json(...\AntSharesCore\protocol.json)
2.更改magic值(Magic): 7630404
3.更改后备共识节点(StandbyValidators),这里都是节点的公钥
4.更改种子节点IP信息(SeedList) : 
{
  "ProtocolConfiguration": {
    "Magic": 7630404,
    "CoinVersion": 23,
    "StandbyMiners": [
      "03f1d8df48cac340eaaf9ad5dfadac75fb45e2a48ba3c6c63721b340826f3daa18",
      "0313f7d3d34b95d3dcf016d23ad4e22f2b6253dfafc54971cd55f678170f40a735",
      "03cb28efdb867960536aec1d9ba395bbf639888062d6186863756425c741741608",
      "03a26ef67f370d618c76859723f0c987133bc4d2236c7824e0938a52b6e7d6a6e5"
    ],
    "SeedList": [
      "10.0.2.4:10333",
      "10.0.2.5:10333",
      "10.0.2.6:10333",
      "10.0.2.7:10333"
    ],
    "SystemFee": {
      "EnrollmentTransaction": 1000,
      "IssueTransaction": 500,
      "PublishTransaction": 500,
      "RegisterTransaction": 10000
    }
  }
}

第六步,在四台服务器中分别运行命令开启节点(同时开启rpc服务):
cd hwapp
cd AntSharesCore
dotnet AntSharesDaemon.dll /rpc

进入ant>模式
在10.0.2.4的服务器输入
open wallet /home/hellogv/hwapp/wallets/1.db3
start consensus

在10.0.2.5的服务器输入
open wallet /home/hellogv/hwapp/wallets/2.db3
start consensus

在10.0.2.6的服务器输入
open wallet /home/hellogv/hwapp/wallets/3.db3
start consensus

在10.0.2.7的服务器输入

open wallet /home/hellogv/hwapp/wallets/4.db3
start consensus
技术分享


AntShares区块链的节点部署与搭建私有链