比特股搭建私链(多节点)+钱包+网页钱包+水龙头

官方文档基本说明了如何安装,但有些地方比较简洁,以下内容经过本人亲自实验,亲测可行。配置环境:ubuntu16.04桌面版和server版,注意boost和openssl版本;18.04配置失败,尝试过降低boost版本和openssl版本,以及gcc/g++版本,均未成功。

注意事项

由于是多个节点,首先得保证多台机器互相能ping通,在后续的配置文件中多处为127.0.0.1,都设置为相应的机器IP地址。仔细检查各个端口,避免端口配置错误,导致链接失败。启动顺序:先启动网络,再启动钱包,然后启动水龙头,最后启动网页钱包。

part1:编译bitshares-core

ubuntu16.04按照官网流程即可

1.安装依赖,ubuntu16.04的boost版本为1.58,不需要更新

sudo apt-get install libboost-all-dev

2.下载编译

1.      git clone https://github.com/bitshares/bitshares-core.git
2.      cd bitshares-core
3.      git submodule update --init --recursive
4.      cmake -DBOOST_ROOT="$BOOST_ROOT" -DCMAKE_BUILD_TYPE=Release .
5.      make 

可能遇到的问题:第4步失败,查看错误输出,检查依赖版本;第5步失败,有教程使用make -j4,多线程编译,可能报错,申请不到足够的内存,解决方法,设置swap交换空间,可设大一下,有博客提够了解决方案,可参考。编译时间较长,干点其他事情,耐心等待。

编译后生成的文件在programs下,为方便使用,可设置软链接:

ln -s programs/witness_node/witness_node /usr/local/bin/witness_node
ln -s programs/cli_wallet/cli_wallet  /usr/local/bin/cli_wallet

之后节点私链搭建以及钱包的使用可参考比特股私有链环境搭建,2018.6月搭建,依然可行。PS:增加节点witness-id时,猜测需要相应的增加config.ini文件中的private-key和debug-private-key,这样多个节点不报错。

part 2:多节点私链搭建

参考:搭建你自己的比特股测试网(上篇) - How to build your own bitshares testnet (part I)搭建你自己的比特股测试网(下篇) - How to build your own bitshares testnet (part II)

启动第二个、第三个节点参考下文的启动方式。
Bitshares 私链部署witness节点

在另一台机器上编译bitshares-core,然后将原来的genesis.json复制到本机对应目录下,执行

witness_node -d data --seed-nodes [] --genesis-json genesis.json

会初始化目录,然后ctrl-c,推出程序,编辑config.ini,修改配置:

p2p-endpoint = 0.0.0.0:8095
seed-nodes = [192.168.1.110:8095]
rpc-endpoint = 0.0.0.0:8090
enale-stale-production = true

seed-nodes填写之前启动的区块链节点的IP和p2p-endpoint端口,再次启动witness程序

witness_node -d data

config.ini文件中需要修改的位置有:


×1

# Endpoint for P2P node to listen on  
# p2p-endpoint =   
p2p-endpoint = 0.0.0.0:8095  ##端口可以自定义

×2

# JSON array of P2P nodes to connect to on startup
# seed-nodes = 
seed-nodes = []     ######### seed-nodes设置为空,否则会使用默认设置 ########

×3

# Endpoint for websocket RPC to listen on
# rpc-endpoint = 
rpc-endpoint = 0.0.0.0:8090 ############# rpc的ip和端口 #########

×4

# File to read Genesis State from
# genesis-json = 
genesis-json = test-net.json ######### 配置文件 #########

×5

# Enable block production, even if the chain is stale.
#enable-stale-production = false
enable-stale-production = true ########## 设置改false为true ##############

×6增加了见证节点时,witness-id需要修改为对应的id和key

# ID of witness controlled by this node (e.g. "1.6.5", quotes are required, may specify multiple times)
# witness-id = 
witness-id = "1.6.1"  ########### 添加见证节点#########
# Tuple of [PublicKey, WIF private key] (may specify multiple times)
private-key =        ["BTS6WqFcNmb8DA8SG2HJDL23TzSKk67HrCf6qTeqXhbCcohi11epm","5JjzogP6V1TciYQHthBLPnmj5cyrYLfwfoDeY6rpG4mcNUd7hDq"]
# Tuple of [PublicKey, WIF private key] (may specify multiple times)
debug-private-key = ["BTS6WqFcNmb8DA8SG2HJDL23TzSKk67HrCf6qTeqXhbCcohi11epm","5JjzogP6V1TciYQHthBLPnmj5cyrYLfwfoDeY6rpG4mcNUd7hDq"]

part3:搭建比特股的水龙头注册服务

参考官方文档,注意:

sudo rbenv install 2.2.3
sudo rbenv global 2.2.3
sudo gem install bundler

我在实验中加sudo会报错,找不到sudo rbenv 命令,不加sudo最终也配置成功。rbenv的安装可能会出问题,参考rbenv.配置参考简书:搭建比特股的水龙头注册服务steemit:搭建比特股的水龙头注册服务 .rail命令可能会报错,不要气馁,搜一搜解决方案。
水龙头访问配置faucet.yml中的127.0.0.1都改为对应的ip地址,这样其他机器也能访问。
rake secret会生成一个密钥,将这个密钥copy到config/secrets.yml中进行替换

遇到的问题

问题1

注册时,水龙头后台服务报异常Failed to create account: tes2 - Assert Exception: base58str.substr( 0, prefix_len ) == prefix。修改方法参见steemit:搭建比特股的水龙头注册服务 ,作者测试了第二种方法,本人测试了第一种方法,可行,不需要重新编译,比较方便,ChainConfig.js文件在bitshares-ui/node_modules/bitsharesjs-ws/cjs/src/下,修改所有“GPH”为“BTS”,重新启动网页钱包。

问题2

钱包只有在导入admin(nathan)帐号时才能create帐号,其他终身会员的帐号无法创建帐号,没找到解决方法。猜测为权限控制,需要获取某种权限。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 228,238评论 6 531
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 98,430评论 3 415
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 176,134评论 0 373
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 62,893评论 1 309
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 71,653评论 6 408
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 55,136评论 1 323
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 43,212评论 3 441
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 42,372评论 0 288
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 48,888评论 1 334
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 40,738评论 3 354
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 42,939评论 1 369
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 38,482评论 5 359
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 44,179评论 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 34,588评论 0 26
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 35,829评论 1 283
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 51,610评论 3 391
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 47,916评论 2 372

推荐阅读更多精彩内容

  • 安装环境 ubuntu16.04 64位 一安装依赖库(mysql数据库 ) 注意,记得安装sql时的root用户...
    剑有偏锋阅读 3,801评论 10 7
  • javascripty已经走上工程化的道路了,各种mvm,mvvm框架已经让人目不暇接了,这里就不讨论js了。我来...
    锋子锅锅阅读 620评论 0 12
  • 我知道,有些人,就像是小刺猬,浑身是刺,伤害别人。 我知道,刺猬的内心也是柔软的啊。它也有爱,它也会痛,希望能有一...
    杞人云空阅读 367评论 3 4
  • 本周小结 三天假期过后,实验室工作和自己的技术和非技术学习都进入了状态了。周一:继续骑行,14:20从乳山汽车站坐...
    im天行阅读 222评论 0 0