FISCO BCOS搭链最全教程(Ubuntu)

注意:

1.使用SSH连接时,首先必须要有ssh连接工具openssh-server, 新系统要安装。

sudo apt-get install openssh-server

2.在普通用户中设置root的密码。

sudo passwd root
su root
cd ~

3.使用root用户连接。

vi /etc/ssh/sshd_config

取消文件里PermitRootLogin yes的注释,退出保存;若没有需要手动添加,保存退出,然后重启sshd。

PermitRootLogin yes
systemctl restart sshd

一、搭链单机单群组4节点的链

1.准备环境

sudo apt install -y openssl curl

  创建fisco目录 

cd ~ && mkdir fisco && cd fisco

2.下载安装脚本build_chain.sh

curl -#LO https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/FISCO-BCOS/FISCO-BCOS/releases/v2.8.0/build_chain.sh && chmod u+x build_chain.sh

常用的build_chain.sh命令

build_chain.sh直接输入会报错,因为没给入实际参数
build_chain.sh -l <对应的ip地址:节点数> # 指定使用的ip及其节点数
build_chain.sh -p <起始端口号> # 指定使用的起始端口号
build_chain.sh -e <fisco程序路径> # 如果预先已经下载好fisco,则可以直接使用fisco程序路径

3.配置及安装

-p指定起始端口,分别是p2p_port,channel_port,jsonrpc_port

./build_chain.sh -l "127.0.0.1:4" -p 30300,20200,8545

4.启动链(节点)

cd nodes/127.0.0.1
./start_all.sh

5.检查进程及端口监听

检查进程是否启动 如果进程数不为4,那么进程没启动的原因一般是端口被占用(!)

ps -ef | grep -v grep | grep fisco-bcos

检查监听的端口,当前版本每个节点监听3个端口,分被用于p2p,channel,jsonrpc通信

netstat -ntlp | grep fisco-bcos

6.检查日志输出

查看节点node0链接的节点数,从下面的输出可以看出node0与另外3个节点有链接

tail -f node0/log/log* | grep connected

检查是否在共识,如果不停输出++++Generating seal表示正常输出

tail -f node0/log/log* | grep +++

二、WeBASE-Front搭建:简介

三、WeBASE-Front搭建:依赖环境

(1)参考文献

 https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html

(2)Java环境变量

sudo apt-get install openjdk-8-jdk

  ubuntu系统设置java环境变量

export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

注意,以上几条配置命令每次都要在终端设置才会生效,为了方便,也可以执行vi ~/.profile 命令,在当前用户的配置文件末尾加上上面几条语句,用户每次登陆时会自动更新环境变量

四、WeBASE-Front搭建:部署

(1)下载安装包

cd ~/fisco/&& wget https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/releases/download/v1.5.2/webase-front.zip

(2)解压安装包(使用unzip之前要先安装对应的包)

unzip webase-front.zip

(3)拷贝证书文件

将节点所在目录nodes/${ip}/sdk下的证书文件拷贝到conf下,下面是拷贝127.0.0.1节点示例

cp -r nodes/127.0.0.1/sdk/* webase-front/conf/

(4)服务启停

首先进入服务中:

cd webase-front

启动:bash start.sh

停止:bash stop.sh

检查:bash status.sh

(5)访问

(6) 可能遇到的问题:

==============      Starting WeBASE-Front      ==============
==============WeBASE-Front start fail. Please check through the log file (default path: ./webase-front/log/). ==============

==============      Starting WeBASE      ==============
==============WeBASE-Node-Manager start fail. Please check through the log file (default path: ./webase.deploy/log/). ==============

=======================================================
Server com.webank.webase.front.Application Port 5002.....................[Failed]. Please check message through the log file (default path:./log/)
======================================================= 

原因:未开放网络端口

解决:

sudo apt-get install iptables

安装相应持续化规则扩展包,安装iptables-persistent后 开放端口需要root权限 

sudo apt-get install iptables-persistent

开放端口5000,5002

sudo iptables -I INPUT -p tcp --dport 5000 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 5002 -j ACCEPT

五、第一个合约示例:实现Helloworld

(1)创建一个合约名称为Helloworld的sol文件(智能合约文件)

pragma solidity ^0.4.25;

contract Helloworld{
    string name;
    
    function Helloworld(){
        name = "Helloworld";
    }
    
    function get()constant returns(string){
        return name;
    }
    
    function setname(string n){
        name = n;
    }
}

(2)对得到的合约文件进行保存,编译

(3)部署,在部署前,我们需要创建一个新的角色来进行部署

部署成功后

 (4)最后,我们对合约进行调用测试

  • 9
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值