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