前提条件

  • 在Kubernetes叢集上完成區塊鏈網路的配置和部署。
  • 如應用程式部署於容器叢集外,則需要完成 配置公網IP和外部連接埠

背景信息

利用阿里雲Container Service區塊鏈解決方案建立了區塊鏈網路之後,使用者可使用基於 Hyperledger Fabric SDK 的區塊鏈應用程式訪問區塊鏈網路上的服務。此外,區塊鏈解決方案從Hyperledger Fabric 1.1版本開始支援Connection Profile功能。

  • 區塊鏈應用程式可與區塊鏈網路一同部署於阿里雲容器叢集上,在這種模式下,應用程式可直接通過區塊鏈各個服務的名稱加上服務連接埠來實現服務的串連訪問。
  • 區塊鏈應用也可以部署於阿里雲容器叢集之外,在這種模式下,應用程式可通過區塊鏈網路的外部存取地址加上各個服務的外部連接埠來實現服務的串連訪問。

本樣本使用了上述的第二種方式進行示範,提供的應用程式是基於 Hyperledger Fabric的balance transfer 轉賬應用進行適配性調整而成的。

使用者可直接使用本樣本提供的應用程式,也可以使用 Hyperledger Fabric 的官方應用程式範例(如 fabric-samples)或者自己開發的區塊鏈應用程式,並參考本樣本應用的原始碼進行適配性的調整,即可實現對阿里雲Container Service區塊鏈網路的訪問。

對已有的區塊鏈應用程式的適配性調整包括:

  • 直接使用範例程式碼中提供的指令碼 download-from-fabric-network.sh,實現從新部署的區塊鏈網路一鍵自動化下載區塊鏈網路設定,包括認證、密鑰、區塊鏈網路設定檔(主要是 config.json和network-config.yaml);
  • 確保區塊鏈應用程式可以正確載入到上述區塊鏈網路設定;
  • 如區塊鏈應用程式中直接使用了區塊鏈通道(channel)名稱、區塊鏈外部存取地址、節點名稱或網域名稱等資訊,請按照設定檔(config.json和network-config.yaml)的參數進行替換以保持與目標區塊鏈網路的一致。

操作步骤

  1. 下載樣本區塊鏈應用程式原始碼到本地開發環境。命令如下:
    git clone https://github.com/AliyunContainerService/solution-blockchain-demo.git
  2. 按照樣本區塊鏈應用程式的README文檔,完成後續操作。

    中文版: https://github.com/AliyunContainerService/solution-blockchain-demo/blob/master/balance-transfer-app/README.cn.md

    英文版: https://github.com/AliyunContainerService/solution-blockchain-demo/blob/master/balance-transfer-app/README.md

    说明 對同一套區塊鏈網路,CLI樣本和應用程式樣本無法同時運行,請為每一套區塊鏈網路僅選擇一種類型的樣本運行。