第一章 區塊鏈系列 聯盟鏈FISCO BCOS 底層搭建


 

想了解相關區塊鏈開發,技術提問,請加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代碼

 

 讀后感覺不錯,有收獲可以微信請作者喝杯咖啡,讀后有疑問請加微信,拉群研討,注明來意

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM