0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Blockchain(ブロックチェーン)Advent Calendar 2021

Day 18

PolarでRegtest Bitcoin/Lightningノードを大量生産する

Last updated at Posted at 2021-12-17

ライトニングノードの設定をいろいろ試してみたり、作ったライトニングアプリの挙動をテストしたいとき、手元にRegtestのネットワークを立ち上げるのが非常に手間に感じていました。
大量のターミナルを立ち上げてるとどれがどれだかわからなくなってきますよね。

そこで、Polarというソフトを使うとGUIで手軽にRegtestモードのライトニングネットワークを立ち上げられると聞いて、早速使ってみました。

Polarの導入方法

GitHubからソースまたはバイナリをダウンロードします。

私はUbuntu環境だったので、バイナリはアーキテクチャによってpolar-linux-amd64-v1.3.0.debpolar-linux-x86_64-v1.3.0.AppImageのどちらかになりますね。

私はノートPCで実行したかったので、.AppImageの方をダウンロードしました。GUIで実行するので、ダウンロードフォルダ内のファイルをダブルクリックで起動…する前に、右クリックして「プロパティ」からファイルを実行できるように権限を設定しましょう。 コマンドラインからchmodコマンドを使ってもいいです。

Polarの使い方

Polarが立ち上がると、早速ネットワークを作ろうと言われるので必要なノード数を選んで作成します。c-lightning、Lnd、Eclair、Bitcoin Coreから選びますが、後から追加することもできるので、あまり深く考える必要はありません。

選択すると画面が遷移し、ネットワーク図が表示されます。

Screenshot from 2021-12-17 22-20-49.png

例えばこのネットワークにはBitcoin Coreのノードが1つと、それに接続したc-lightningノードが4つあります。

右上の「Start」を押すとそれぞれのノードがDockerイメージから起動します。初回はDockerイメージのダウンロードがあるので少し時間がかかります。

Bitcoinノードをクリックすると右側にメニューが出てきます。”Actions”タブから任意の数のブロックをマイニングしたり、コマンドラインを開いて直接操作したり、ログを確認できます。

Lightningノードもクリックすると右側にメニューが表示され、”Actions”タブから資金を追加したり、チャネルを開けたり、インボイスの発行や支払いができます。もちろんコマンドライン操作やログの確認も。

”Connect"タブにある情報を使ってローカル環境のLappsをつなぎ、動作確認することもできます!

また、チャネルの開閉はノードについている点をドラッグすることで視覚的に行なえ、バランスも視覚的に表示されます。下図はいくつかチャネルを開き、ペイメントを行った後のネットワークの様子です:

Screenshot from 2021-12-17 22-27-26.png

Polarを使うとRegtest上のLightning Networkを自由自在に構築できます。ぜひテストに活用してください。

ちなみに追記ですが、自分は自作のc-lightningプラグインのテストに使用したかったのですが、各ノードはそれぞれコンテナが独立しているため、それには別途特製のDockerイメージを作る必要がありそうです。特製のDockerイメージの追加や管理はメニューバー右上の”Manage Images"から行うことができるようなので、私もこれからチャレンジしてみます!

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?