想了解相关区块链开发,技术提问,请加QQ群:538327407

FISCO BCOS 基础安装教程:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/installation.html

官方文档:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/tutorial/sdk_application.html

环境准备:腾讯云服务器 ubuntu 18.4

根据官方基础教程,按照标准版本,如果国密版本另外处理。

 

单群组FISCO BCOS联盟链的搭建(适用于开发模式、单个服务器搭建,生产环境使用企业级分布式部署)

本节以搭建单群组FISCO BCOS链为例操作。使用build_chain.sh脚本在本地搭建一条4节点的FISCO BCOS链,以Ubuntu 16.04系统为例操作。

注解

  • 搭建多群组的链操作类似,感兴趣可以 参考这里 。
  • 本节使用预编译的静态`fisco-bcos`二进制文件,在CentOS 7和Ubuntu 16.04上经过测试。

准备环境

  • 安装依赖

build_chain.sh脚本依赖于openssl, curl,使用下面的指令安装。CentOS将下面命令中的apt替换为yum执行即可。macOS执行brew install openssl curl即可。

sudo apt install -y openssl curl
  • 创建操作目录
cd ~ && mkdir -p fisco && cd fisco
  • 下载build_chain.sh脚本
curl -LO https://github.com/FISCO-BCOS/FISCO-BCOS/releases/download/`curl -s https://api.github.com/repos/FISCO-BCOS/FISCO-BCOS/releases | grep "\"v2\." | sort -u | tail -n 1 | cut -d \" -f 4`/build_chain.sh && chmod u+x build_chain.sh

搭建单群组4节点联盟链

在fisco目录下执行下面的指令,生成一条单群组4节点的FISCO链。需要保证机器的30300~30303,20200~20203,8545~8548端口没有被占用。

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

注解

  • 其中-p选项指定起始端口,分别是p2p_port,channel_port,jsonrpc_port,出于安全考虑jsonrpc/channel默认监听127.0.0.1,需要外网访问请添加-i参数。

1、进入路径

cd /home/useradmin/fisco 可以通过pwd 命令查询

2、启动区块链

bash nodes/127.0.0.1/start_all.sh

3、在控制台配置要的情况下,启动控制台

cd ~/fisco/console

./start.sh

4、查看智能合约的位置

pwd 命令,得到地址
/home/useradmin/fisco/console/solidity/contracts

5、调用合约

将合约放到合约目录下,进入控制台模式,这样就可以在控制台调用智能合约,执行命令如下:

deploy 合约名称

call 合约名称 合约地址 方法 参数

6、合约编写说明

(1) 新建表方法,只有名称,没有数据类型

(2)调用表方法,这里面关联我们自己创建的表

(3) 复杂的业务流程验证,交易校验,交易操作(比如需要修改权限需要控制好,在合约里面尽量不要开放修改权限)

7、部署合约操作

cat > ./contracts/Asset.sol << EOF 将这些部分去掉,包括末尾的EOF

(1) 执行部署合约命令:deploy Asset.sol
返回contract address:0x0b9ce0c6c4a85816bb328815d6befd7aa56119e8

(2) 执行查询方法 参数要使用双引号

call Asset 0x0b9ce0c6c4a85816bb328815d6befd7aa56119e8 select "0x0b9ce0c6c4a85816bb328815d6befd7aa56119e8"

调用 多参数方法,需要使用 空格 然后使用对应的参数

call Asset 0x0b9ce0c6c4a85816bb328815d6befd7aa56119e8 register "0x0b9ce0c6c4a85816bb328815d6befd7aa56119e8" 1000

8、将合约进行java的转化

将合约放到这个文件夹下面

/home/useradmin/fisco/console/tools/contracts

在/home/useradmin/fisco/console/tools 目录下执行命令

./sol2java.sh org.fisco.bcos.asset.contract

就会在/home/useradmin/fisco/console/tools/java目录下生成对应的包和对应的合约java代码

 读后感觉不错,有收获可以微信请作者喝杯咖啡,读后有疑问请加微信,拉群研讨,注明来意

第一章 区块链系列 联盟链FISCO BCOS 底层搭建的更多相关文章

  1. 联盟链FISCO BCOS权限控制一览

    FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...

  2. 联盟链FISCO BCOS v2.0.0-rc3 发布

    FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...

  3. 第六章 Fisco Bcos 多服务器分布式部署

    想了解相关区块链开发,技术提问,请加QQ群:538327407 前提概要 前面几章,我们通过单机部署,在单台服务器上搭建四个节点,完成Fisco Bcos 底层搭建,并完成相关合约开发.sdk 开发. ...

  4. 人民网慕课联手FISCO BCOS开源社区上线“区块链学院”

    FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...

  5. Spring Boot 整合 Fisco Bcos(区块链)

    简介 FISCO BCOS是由国内企业主导研发.对外开源.安全可控的企业级金融联盟链底层平台,由金链盟开源工作组协作打造,并于2017年正式对外开源. 目前,成熟的区块链的平台不少,之所以选择FISC ...

  6. Linux系统shell编程自学_第一章基础

    第一章 基础shell的优势在于处理操作系统底层的业务,Python,php的优势在于开发运维工具,web界面的管理工具以及web业务开发.处理一键安装.优化.报警脚本shell又叫命令解释器,它能识 ...

  7. 36小时极客嘉年华!FISCO BCOS黑客马拉松报名启动

    FISCO BCOS是完全开源的联盟区块链底层技术平台,由金融区块链合作联盟(深圳)(简称金链盟)成立开源工作组通力打造.开源工作组成员包括博彦科技.华为.深证通.神州数码.四方精创.腾讯.微众银行. ...

  8. 第十章 Fisco Bcos 权限控制下的数据上链实操演练

    一.目的 前面已经完成fisco bcos 相关底层搭建.sdk使用.控制台.webase中间件平台等系列实战开发, 本次进行最后一个部分,体系化管理区块链底层,建立有序的底层控管制度,实现权限化管理 ...

  9. 第七章 手动部署Fisco Bcos 区块链并完成新增群组,在原有群组中新增机构

    鉴于笔者以前各大博客教程都有很多人提问,早期建立一个技术交流群,里面技术体系可能比较杂,想了解相关区块链开发,技术提问,请加QQ群:538327407 目标 1.新增群组搭建完整联盟链 2.根据群组新 ...

随机推荐

  1. Python学习笔记(四)Python程序的控制结构

    在学习了 Python 的基本数据类型后,我们就要开始接触Python程序的控制结构,了解 Python 是如何使用控制结构来更改程序的执行顺序以满足多样的功能需求.如果有的小伙伴在之前学过C语言,j ...

  2. java 3类的继承

    模板类 泛型程序设计方法 类的组合 类的继承 java只有单继承 隐藏和覆盖 用super.x调用 访问静态属性 静态属性不继承 静态成员只有一个,不会有副本 静态成员只有一个所有的超类和子类 方法的 ...

  3. NOIP模拟 17.8.18

    NOIP模拟17.8.18 A.小菜一碟的背包[题目描述]Blice和阿强巴是好朋友但萌萌哒Blice不擅长数学,所以阿强巴给了她一些奶牛做练习阿强巴有 n头奶牛,每头奶牛每天可以产一定量的奶,同时也 ...

  4. linux下Nginx安装Zend Optimizer组件步骤

    注意:Zend Optimizer 在php5.3以上的版本已经集成了,所以php5.3以上的版本没必要安装了.而推出了Zend Guard Loader. http://www.zend.com/e ...

  5. Hdu 4597记忆化搜索

    好久没有做题了,水平已经完全在学弟之下了. 一个吉林邀请赛最水的题目.:( 其实这题一看到数据范围,只可以想到思路,直接爆搜,加个记忆化. 这题虽然A了,但是我还是没太想清楚一些边界情况,心虚着A了. ...

  6. nodeJs学习-19 个人博客案例-(1)数据字典

    智能社视频27.28 数据字典: 定义: url 300字 admin_table 管理员用户表 ID username varchar(32) password varchar(32) banner ...

  7. 从零学React Native之14 网络请求

    通过HTTP或者HTTPS协议与网络侧服务器交换数据是移动应用中常见的通信方式. node-fetch是RN推荐的请求方式. React Native框架在初始化项目时, 引入了node-fetch包 ...

  8. IMEI校验思路及代码

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. JSTL的时间格式化

    <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> 开头第一句必须上 ...

  10. Java练习 SDUT-3106_小鑫数数儿

    小鑫数数儿 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 某天小鑫忽然得到了许多的数字,他很好学,老师给他布置了一个任 ...