1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > FISCO-BCOS学习——区块链浏览器搭建

FISCO-BCOS学习——区块链浏览器搭建

时间:2019-12-01 07:13:48

相关推荐

FISCO-BCOS学习——区块链浏览器搭建

注意:

本系列文章遇到的问题都可以参考查找 官方文档 或 本系列问题总结!

FISCO-BCOS 及 WeBase 问题记录

FISCO-BCOS 官方文档

WeBase 官方文档

FISCO BCOS区块链浏览器搭建

前提条件

重要提示:

目前FISCO BCOS还不算完善,所以在搭建浏览器以及后面WeBASE调试时,需要使用谷歌浏览器,而不要使用新版Edge

一、配置Java环境

可以参考本文Java环境配置

二、配置Mysql环境

此处以Centos安装MariaDB为例。MariaDB数据库是 MySQL 的一个分支,主要由开源社区在维护,采用 GPL 授权许可。MariaDB完全兼容 MySQL,包括API和命令行。

首先在服务器安全组规则中加入3306端口,这是mysql的默认端口

1、安装MariaDB

sudo yum install -y mariadb*

下面为mysql安装

sudo yum install -y mysql*

2、启动与停止

# 启动sudo systemctl start mariadb.servicesudo systemctl start mysqld.service# 停止sudo systemctl stop mariadb.service

3、设置开启启动

sudo systemctl enable mariadb.service

4、初始化

执行以下命令:sudo mysql_secure_installation以下根据提示输入:Enter current password for root (enter for none):<–初次运行直接回车Set root password? [Y/n] <– 是否设置root用户密码,输入y并回车或直接回车New password: <– 设置root用户的密码Re-enter new password: <– 再输入一次你设置的密码Remove anonymous users? [Y/n] <– 是否删除匿名用户,回车Disallow root login remotely? [Y/n] <–是否禁止root远程登录,回车Remove test database and access to it? [Y/n] <– 是否删除test数据库,回车Reload privilege tables now? [Y/n] <– 是否重新加载权限表,回车

5、使用root用户登录,密码为初始化设置的密码

这一步之前一定先要将3306端口添加到安全组规则

至于如何添加安全组规则,可以参考本文安全组规则部分

mysql -uroot -p -h localhost -P 3306

6、授权root用户远程访问

mysql > GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;mysql > flush PRIVILEGES;

例子中给出的数据库密码(123456)仅为样例,强烈建议设置成复杂密码例子中root用户的远程授权设置会使数据库在所有网络上都可以访问,请按具体的网络拓扑和权限控制情况,设置网络和权限帐号

7、创建test用户并授权本地访问

mysql > GRANT ALL PRIVILEGES ON *.* TO 'test'@localhost IDENTIFIED BY '123456' WITH GRANT OPTION;mysql > flush PRIVILEGES;

8、登录数据库

-p后面为自己的密码

mysql -utest -p123456 -h localhost -P 3306

9、创建数据库

mysql > create database db_browser;

mariaDB是完全兼容mysql的,所以安装完mariaDB之后,使用mysql的命令方式完全可行

三、配置Python环境

1、下载安装Python

sudo yum install -y python-requests

下列命令为指定安装 python3.6.*版本

sudo yum install -y python36

可以使用python3 --version命令查看python3版本号

若没有修改py默认版本,可以使用python --version命令查看python2版本号

2、修改Python默认版本(可跳过)

(可以不进行修改,后面使用python时输入python3就行,因担心导致bug,本人没有修改默认版本)

因为yum需要python2.7做支持,所以需要对其修改

vim /usr/bin/yum# 打开后将第一行修改#!/usr/bin/python修改为#!/usr/bin/python2.7

修改urlgrabber-ext-down配置

vim /usr/libexec/urlgrabber-ext-down将第一行#! /usr/bin/python修改为#! /usr/bin/python2.7

删除原有的软连接

rm -rf /usr/bin/python

建立新的软连接

ln -s /usr/local/python3/bin/python3 /usr/bin/python(连接位置为python3安装目录)

四、配置PyMySQL环境

1、Python3.4及以上版本,需安装PyMysql依赖包。

sudo pip3 install PyMySQL

不支持pip命令的话,可以使用以下方式:

git clone /PyMySQL/PyMySQLcd PyMySQL/python3 setup.py install

注意:使用python2.7+时,需安装MySQL-python

sudo yum install -y MySQL-python

拉取代码

一、执行命令

1、安装git

yum install git

2、克隆代码

git clone /FISCO-BCOS/fisco-bcos-browser.git

修改配置(没有变化的可以不修改)

可以使用以下命令修改,也可以直接修改文件(vim common.properties)

数据库需要提前安装

服务端口不能小于1024

数据库IP:sed -i "s/127.0.0.1/${your_db_ip}/g" common.properties数据库端口:sed -i "s/3306/${your_db_port}/g" common.properties数据库用户名:sed -i "s/dbUsername/${your_db_account}/g" common.properties数据库密码:sed -i "s/dbPassword/${your_db_password}/g" common.properties数据库名称:sed -i "s/db_browser/${your_db_name}/g" common.properties前端服务端口:sed -i "s/5100/${your_web_port}/g" common.properties后端服务端口:sed -i "s/5101/${your_server_port}/g" common.properties例子(将数据库IP由127.0.0.1改为0.0.0.0):sed -i "s/127.0.0.1/0.0.0.0/g" application.yml

部署

一、进入目录

cd fisco-bcos-browser/deploy

二、部署所有服务

此处因为安装了python3,配置了PyMySQL环境,并且没有修改python默认版本,才可以使用python3命令

python3 deploy.py installAll

其他指令:

# 停止所有服务:python3 deploy.py stopAll# 启动所有服务:python3 deploy.py startAll# 单独启停命令和说明可查看帮助python3 deploy.py help

如果在此过程中遇到问题 可以在此文查看!

访问

例如:在浏览器输入以下访问地址,IP为部署服务器IP,端口为前端服务端口

http://服务器ip:5100/

1、新增群组

由于我们是单群组,所以也可得知群组id为1,其他信息随意输入

2、新增节点

IP:127.0.0.1rpc接口:8545p2p接口:30300IP:127.0.0.1rpc接口:8546p2p接口:30301IP:127.0.0.1rpc接口:8547p2p接口:30302IP:127.0.0.1rpc接口:8548p2p接口:30303

这些节点的信息可以通过如下路径查看

/root/fisco/nodes/127.0.0.1/node0/config.ini

[rpc]channel_listen_ip=0.0.0.0channel_listen_port=0jsonrpc_listen_ip=127.0.0.1jsonrpc_listen_port=8545[p2p]listen_ip=0.0.0.0listen_port=30300; nodes to connectnode.0=127.0.0.1:30300node.1=127.0.0.1:30301node.2=127.0.0.1:30302node.3=127.0.0.1:30303

/root/fisco/nodes/127.0.0.1/node1/config.ini

/root/fisco/nodes/127.0.0.1/node2/config.ini

/root/fisco/nodes/127.0.0.1/node3/config.ini

3、上传编译合约

这里可以将前面的HelloWorld合约进行上产编译部署一下试一试。

合约内容可以 参考官方文档!

首先创建一个空白文本,将合约内容粘贴上去

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;}}

将该文本命名为HelloWorld.sol上传 并 进行编译

编译等待时间较长的话多刷新几次就好!

日志路径

部署日志:log/后端日志:server/log/前端日志:web/log/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。