目录

1.环境准备

2.下载区块链浏览器并部署

3.部署项目

5.配置4个节点

6.合约配置

7.区块链信息—预览


1.环境准备

一键部署模式,采用的是同机部署。

  • Java jdk1.8.0_121及以上版本
  • Python 2.7
  • MySQL-Python 1.2.5
  • 数据库 mysql-5.6及以上版本

官方文档一键部署说明:https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/browser/deploy.html#id17

(1)Java环境搭建:在搭建控制台的时候已经安装了Java环境,使用以下命令查看Java版本。

java -version

(2)Python2.7 下载安装,使用以下命令查看Python版本。

python2 --version

(3)安装MySQL

sudo apt-get install mysql-server
apt-get isntall mysql-client
sudo apt-get install libmysqlclient-dev

检查是否安装成功

sudo netstat -tap | grep mysql

看到mysql 的socket处于 listen 状态表示安装成功,如下示:

(4)MySQL-python下载安装

sudo apt-get install -y python-pip
sudo pip install MySQL-python

出现Successful installed MySQL-python 即表示安装成功,如果出错

sudo apt-get install libssl-dev libffi-dev build-essential libxml2-dev libxslt1-dev

或者也可以尝试

pip install MySQL-python

(5)mysql 5.7 版本操作

①打开系统配置文件

sudo vim /etc/mysql/debian.cnf

将用户名和密码复制下来

user     = debian-sys-maint
password = BEMk40zc3jkkoVJz

②使用下面命令,进行用户登录,-p后面直接是上面的密码

mysql -u debian-sys-maint -pBEMk40zc3jkkoVJz密码

③修改操作用户密码

use mysql;
update user set authentication_string=PASSWORD("自定义密码") where user='root';
update user set authentication_string=PASSWORD("123456") where user='root';

更新

update user set plugin="mysql_native_password";
flush privileges;
quit;

④重启mysql

sudo /etc/init.d/mysql stop
sudo /etc/init.d/mysql start

⑤重新连接mysql,查看当前数据库,登录完成之后退出mysql

mysql -u root -p前面自定义的密码
mysql -u root -p123456
quit;

2.下载区块链浏览器并部署

(1)拉取代码

git clone https://github.com/FISCO-BCOS/fisco-bcos-browser.git

(2)对区块链浏览器的配置进行修改

①进入一键部署目录

cd fisco-bcos-browser/deploy

查看

ls

如下可看到我们要修改的 配置文件

②vim修改文件

vim common.properties

修改用户名和密码,按i可输入,database就是区块链浏览器要用的数据库名称,对应的Server.port 和 web.port 根据实际情况修改,一般情况下用默认的,修改前:

修改后:

按ESC键,退出编辑模式, 使用以下命令保存:

:wq

3.部署项目

(1)部署所有服务

python deploy.py startAll

问题:

解决:

①可以先尝试以下命令,部署所有服务:

python deploy.py installAll

此时可能出现的问题:

这是因为unzip命令没有安装,不能使用

安装命令如下:

apt-get install zip unzip

成功了则:

停止所有服务:

python deploy.py stopAll

重试,启动所有服务:

python deploy.py startAll

就解决了,成功界面如下:

(2)可以看到端口为5100,我们在浏览器里输入ip:5100进行访问

10.13.1.23:5100

登录之后可以看到

(3)填写并提交:群组ID默认为1

就可以在generator/conf/group_genesis.ini看到群组1信息:

5.配置4个节点

(1)新增节点

查看接口:

配置接口

同样方法新增另一个节点

(2)新增另一个机构的两个节点

①新增一个节点

②新增另一个节点

6.合约配置

(1)HelloWorld合约

HelloWorld合约提供两个接口,分别是get()set(),用于获取/设置合约变量name。合约内容如下:

pragma solidity ^0.4.24;contract HelloWorld {string name;function HelloWorld() {name = "Hello, World!";}function get()constant returns(string) {return name;}function set(string n) {name = n;}
}

新建一个txt文档将HelloWorld合约的内容放进去,将后缀名改为.sol,然后再上传合约——编译合约,就可以看到:

7.区块链信息—预览

区块链学习2——区块链浏览器的搭建相关推荐

  1. 区块链学习:区块链分类

    网络 公有链 没有认证.权限限制. 数据公开透明. 节点数量.状态不可控. 私有链 认证.权限限制. 数据对内公开透明. 节点数量和状态可控. 联盟链 处于公有链和私有链之间. 认证.权限限制.需要提 ...

  2. 区块链学习之区块链思想的诞生(一)

    区块链最早出现在比特币开元项目中.比特币在诞生和发展过程中,借鉴了来自数字货币.密码学.博弈论.分布式系统.控制论等多个领域的技术成果,作为核心支撑结构的区块链技术大放异彩. 从实体货币到数字货币 区 ...

  3. 区块链学习笔记:区块链浏览器

    一.什么是区块链浏览器 浏览器对于人们来说真是熟悉的不能再熟悉,每每我们需要上网寻找知识,搜集资料都会用到浏览器,我们天天都可能会用到浏览器,使用的频率也十分频繁,所以我们对浏览器很熟悉,它是用来浏览 ...

  4. 剑英的区块链学习手记(二)

    孙子说,知己知彼,百战不殆. 咱是通过小蚁学习区块链技术的. 开工之前,先了解一下小蚁的资料家族. 小蚁网站 https://www.antshares.org/ 小蚁源码 https://githu ...

  5. 区块链学习7:超级账本项目Hyperledger与Fabric以及二者的关系

    ☞ ░ 前往老猿Python博文目录 ░ 一.超级账本(hyperledger) 超级账本(hyperledger)是Linux基金会于2015年发起的推进区块链数字技术和交易验证的开源项目,成员包括 ...

  6. 【区块链学习最全教程】学习 Solidity,全栈 Web3,Javascript 和区块链开发

    Chainlink 开发者社区发布了一个关于全栈 web3,solidity 和区块链开发的完整视频教程.本视频教程由 Chainlink 开发者大使 Patrick Collins 讲解.教程由浅入 ...

  7. 区块链学习路线及资料索引

    2019独角兽企业重金招聘Python工程师标准>>> 一.学习目标 比特币发展历史,挖矿,分叉以及相关应用 区块链底层技术,如共识算法, 侧链技术, 密码学知识等,理解PKI基本知 ...

  8. 区块链学习(6)区块链

    写了几篇区块链的学习笔记,今天来写写比特币中的区块链.比特币中区块链是由包含交易信息的区块从后向前有序链接起来的数据结构.每个区块从后向前有序地链接在这个链条里,每个区块都指向前一个区块. 区块结构 ...

  9. 美化UI合约区块链学习版系统+交易大厅

    简介: 美化UI合约区块链学习版系统+交易大厅 亲测环境:Win+宝塔+Apache+php5.6+mysql5.5 数据库配置文件:/APP/Conf/config.php 设置TP伪静态 后台地址 ...

最新文章

  1. arXiv论文如何一键链接解读视频,这个浏览器扩展帮你实现
  2. CNCF接纳Harbor为沙箱项目
  3. JAVA笔记13__创建线程/线程休眠/等待线程终止/线程中断/守护线程
  4. 【Android NDK 开发】Android Studio 的 NDK 配置 ( 源码编译配置 | 构建脚本配置 | 打包配置 | CMake 配置 | ndkBuild 配置 )
  5. PyQt5 技术篇-设置窗口置顶不生效问题原因,setWindowFlags()设置参数后不生效解决办法
  6. java在所选路径中找到分号,classpath
  7. 一个故事 让你看懂“区块链”
  8. 【Java】浅析八种基本类型
  9. 操作系统之进程管理:18、预防死锁
  10. matlab滤波器函数6,matlab中滤波器函数filter的c语言实现
  11. FPGA学习3-Vivado简易使用方法
  12. ie浏览器开发者模式修改默认ie版本
  13. CTex下载地址和方法
  14. su室内插件_草图大师做室内需要用到那些插件
  15. 新手兼职也能月入5000的副业项目,几乎零门槛
  16. P4939 Agent2
  17. 武磊告别西甲!Python带你解读「全村的希望」武磊职业数据
  18. Android drozer漏洞检测
  19. 2022年中国云市场份额:阿里云腾讯云下降
  20. 新年Java小游戏之「年兽大作战」祝您笑口常开

热门文章

  1. 如何将Python打包后的exe还原成.py?
  2. jsp:使用request为页面添加静态数据。
  3. 总有人问我:独立站该怎么玩?3个案例,你看完就懂了
  4. 仿选股宝选个头条上下拉加载一页的功能
  5. 最新史上最大数据泄露,名为“Collection #1”的7.73亿数据!
  6. SAP 采购订单入库——移动类型
  7. 关于核磁共振图像的命名原则及含义(总结自用)
  8. 记录微博图床403解决方法
  9. 无法访问/opt/module/spark/jars/spa
  10. 使用husky + lint-staged助力团队编码规范