空谷に吼える

ブロックチェーン/DLTまわりのなにかしらを書いていく所存

とりあえずHyperledger FabricのChaincodeが動く環境がほしいときのいくつかの方法

EthereumやらPermission-lessなブロックチェーンは盛り上がっていてうらやましいですね。Hyperledger Fabric(HLF)界隈も盛り上げていきたいですね。ですね、と言っていても盛り上がらないのでせめて役に立ちそうなやつを書いていきます。やっていきましょう

まとめたこと

  • 自分で書いたHLFのChaincodeを動かしてみたい、とりあえず動かせればいいんだ俺は、耐障害性とか運用とかはあとで考える、というひと向けにとりあえずChaincodeが動く環境を手に入れるための方法と、その際に参考になりそうな情報をまとめています
  • Chaincodeの開発環境構築とかビルドとかデプロイとかの話はここではしません

内容

以下把握している範囲で挙げています。他にもあるよって方は教えてください

イチからがんばって作る

公式ドキュメントなどを参照しつつ、まじめに環境を構築する方法です。very オープンソースですね。かなりのがんばりが求められます。がんばってください

公式ドキュメントはここだ。しかしあまり親切ではない、そして英語

死屍累々のHLF構築トライ界に颯爽と現れた救世主、黄色本も助けになります。日本語だ、ありがてえ

配布されているサンプルを使う

パブリックに配布されているサンプルを使ってショートカットする方法です

公式サンプル

あるよ。公式ドキュメントに書いてある通りに進めていくとsample-networkを構築できます。構築するHLFのバージョンを選べる利点があります。環境ができたら温めていたChaincodeをデプロイして存分に呼び出し、あー動いたと眺める、あー動かないと眺めるなどしましょう

その他の構築済VMとか

公式sample-network以外にもgithub等で構築済のVMを探せばたぶん見つかります。デプロイ済のChaincodeを含んだ環境もたぶんあると思います、たぶんと言っているのは前に見た気がするが今回探していないから。HLFのバージョンには注意しましょう

クラウドサービスで提供されているテンプレートを使う

クラウドサービス上のマーケットプレイスなどのかたちで提供されているテンプレートを使ってIaaS上に環境を構築する方法です

AWS

Azure

PaaSを使う

PaaSとして提供されているHLFを使う方法です。環境構築はインスタンス作成時にちょちょっとパラメータを入力するだけで自動でやってくれる、GUIで構成、設定、Chaincodeのデプロイ等ができる、PaaSとしてのドキュメント、ガイドがあるなどでとっつきやすい。Chaincodeの動作(の少なくとも基本的なところ)は他のHLFと変わらない&開発補助のための機能が提供されていたりするので、たぶん一番楽

Oracle Blockchain Cloud Service

IBM Blockchain Platform

備考

HLFをちょっと動かしてみたい程度のときに使いやすかったフレームワークHyperledger Composerはどうも新規機能の開発が止まったようで、HLF本体へのバージョン追随などのメンテナンス含め今後の見通しが不透明です Hyperledger Composer has been put on pause, what are your options now?