區塊鏈學習2——區塊鏈瀏覽器的搭建

目錄

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.區塊鏈信息—預覽

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章