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

接下来会具体解说怎样部署AntShares和搭建私有链,本文使用virtualbox + ubuntu16.04 + AntSharesCore v1.4.,參考了官方文档

第一步,安装.net core,假设提示安装失败,则多刷“sudo apt-get update”几次,详见官方安装指导

sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
sudo apt-get update
sudo apt-get install dotnet-dev-1.0.4

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

dotnet new console -o hwapp
cd hwapp
dotnet restore
dotnet run

第二步,节点部署

先下载并解压缩AntSharesCore(区块链client同一时候也是server端)

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台server,强烈建议断网执行这个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所在server的IP:10.0.2.4
2.db3所在的serverIP:10.0.2.5
3.db3所在的serverIP:10.0.2.6
4.db3所在的serverIP:10.0.2.7

第五步,分别改动4个虚拟机的protocol.Json文件
1.将节点文件及钱包文件拷贝至4台server中,找到配置文件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
}
}
}

第六步,在四台server中分别执行命令开启节点(同一时候开启rpc服务):

cd hwapp
cd AntSharesCore
dotnet AntSharesDaemon.dll /rpc

进入ant>模式
在10.0.2.4的server输入

open wallet /home/hellogv/hwapp/wallets/1.db3
start consensus

在10.0.2.5的server输入

open wallet /home/hellogv/hwapp/wallets/2.db3
start consensus

在10.0.2.6的server输入

open wallet /home/hellogv/hwapp/wallets/3.db3
start consensus

在10.0.2.7的server输入

open wallet /home/hellogv/hwapp/wallets/4.db3
start consensus

AntShares区块链的节点部署与搭建私有链的更多相关文章

  1. NuGet的使用、部署、搭建私有服务

    NuGet的使用.部署.搭建私有服务 前言 什么是NuGet? 为什么要使用NuGet NuGet的优点 使用 Get-Help NuGet Install-Package Get-Package U ...

  2. 区块链学习(四)truffle部署编译智能合约以太坊私有链

    前面我们介绍了以太坊私有链的搭建以及多节点私有链网络,这次我们介绍如何使用truffle框架来部署编译智能合约到我们之前搭建的私有链网络中. 搭建环境及需使用的工具:ubuntu18.04  Truf ...

  3. 联盟链初识以及Fabric环境搭建流程

    这篇文章首先简单介绍了联盟链是什么,再详细的介绍了Fabric环境搭建的整个流程. 区块链分类: 以参与方式分类,区块链可以分为:公有链.联盟链和私有链. 定义: 我们知道区块链就是一个分布式的,去中 ...

  4. 从零构建以太坊(Ethereum)智能合约到项目实战——第20章 搭建自己的私有链网络

    P75 .1-以太坊私网建立 .合约编译.部署完全教程(1) 使用此博文进行安装配置:https://blog.csdn.net/w88193363/article/details/79402074 ...

  5. Mac环境搭建以太坊私有链

    原文地址: 石匠的blog 为了测试以太坊智能合约,最方便的是在本地搭建一个以太坊私有链.在mac上搭建环境主要需要以下步骤. geth安装 geth是go-ethereum的简写,是一个用go语言编 ...

  6. 区块链--Ubuntu上搭建以太坊私有链

    1.搭建私链所需环境 操作系统:ubuntu16.04,开虚拟机的话要至少4G,否则会影响测试挖矿时的速度 软件: geth客户端 Mist和Ethereum Wallet:https://githu ...

  7. 转:区块链开发(一)搭建基于以太坊go-ethereum的私有链环境

    区块链开发(一)搭建基于以太坊go-ethereum的私有链环境 wo541075754 · 2016-11-07 13:00:03 · 3730 次点击 · 预计阅读时间 3 分钟 · 约1小时前  ...

  8. 以太坊联盟链 parity 节点搭建

    https://www.cnblogs.com/sumingk/articles/9097996.html 上一篇文章介绍了以太坊私有链 geth节点的搭建,本篇介绍下企业级应用 联盟链搭建,运用pa ...

  9. 第五章 FISCO BCOS 区块链浏览器的部署

    想了解相关区块链开发,技术提问,请加QQ群:538327407 前提 前面我们已经通过底层部署.sdk调测.自定义智能合约编写与部署.联合单元测试调测,已经初步对FISCO BCOS的区块链底层和实际 ...

随机推荐

  1. vi命令用法

    从shell中启动可视化编辑器vi filename指示shell启动vi编辑器,并将参数filename传给它.如果当前目前中存在该文件,则vi编辑器将它解释为要打开的文件:如果没有该文件,则vi编 ...

  2. Andorid之Annotation框架初使用(一)

    1. 设置Activity的布局 @EActivity(R.layout.main) public class MyActivity extends Activity {} 注: 此时在Android ...

  3. Storm和Spark Streaming框架对比(转)

    原文链接:Storm和Spark Streaming框架对比 Storm和Spark Streaming两个都是分布式流处理的开源框架.但是这两者之间的区别还是很大的,正如你将要在下文看到的. 处理模 ...

  4. SRM 212 Div II Level Two: WinningRecord,Brute Force

    题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=3003&rd=5858 比较简单. 代码如下: #inc ...

  5. anisotropic filter

    各项异性 point一次sample 1 bilinear 一次sample 4 trilinear 一次sample 8   两个4按mipmaplevel混合 anisotropic 异性和同性 ...

  6. TensorFlow进阶(六)---模型保存与恢复、自定义命令行参数

    模型保存与恢复.自定义命令行参数. 在我们训练或者测试过程中,总会遇到需要保存训练完成的模型,然后从中恢复继续我们的测试或者其它使用.模型的保存和恢复也是通过tf.train.Saver类去实现,它主 ...

  7. 改善你的jQuery的25个步骤

    1. 从Google Code加载jQueryGoogle Code上已经托管了多种JavaScript类库,从Google Code上加载jQuery比直接从你的服务器加载更有优势.它节省了你服务器 ...

  8. 关于导出数据库提示 outfile disabled的解决方案

    使用命令mysqldump进行导出数据到本地磁盘,执行该命令的时候不要进入mysql的控制台再使用,这样会报outfiledisabled错误.而是直接使用MYSQL/bin目录下的mysqldump ...

  9. SVN — subclipse操作指引

    摘自: http://jiangzhengjun.iteye.com/blog/491824 安装插件:请参照http://subclipse.tigris.org/servlets/ProjectP ...

  10. ACCESS数据库如何设置密码

    首先是文件-关闭数据库   打开-找到这个文件,然后以独占方式打开   然后文件-设置数据库密码,比如输入123作为密码,下次再打开数据库的时候就会要求输入密码                     ...