【Umbrel】regtestノードのブロックをnode-redでマイニング
regtestで稼働しているBitcon Coreにブロックを追加する方法で、Umbrelにあるアプリで実現する方法を見つけたので公開。UmbrelアプリのNode-REDスタンドアローン版を使います。スタンドアローン版だとアプリ依存関係がないのでこちらを使います。
node-redでgeneratetoaddressメソッドをinjectノードを使って周期的に叩きます。なのでSSHログインやダッシュボードページを接続しなくても勝手にnode-redがマイニングしてくれます。
フロー図

使い方
1.Bitcon Coreをインストールしてregtestに切り替え、connectでユーザー名とパスワードを控えておく
2.Node-REDに以下のフローをコピペ(読み出し)
フロー
[
{
"id": "14f24bc87add7da8",
"type": "tab",
"label": "regtestマイニング",
"disabled": false,
"info": "",
"env": []
},
{
"id": "d8e96432d2bd158b",
"type": "http request",
"z": "14f24bc87add7da8",
"name": "Bitcond JSON-RPC",
"method": "POST",
"ret": "obj",
"paytoqs": "ignore",
"url": "http://localhost:8332",
"tls": "",
"persist": false,
"proxy": "",
"insecureHTTPParser": false,
"authType": "basic",
"senderr": false,
"headers": [],
"x": 390,
"y": 180,
"wires": [
[
"9fd9087131842ee3"
]
]
},
{
"id": "e407ac8a2d7d0c2b",
"type": "change",
"z": "14f24bc87add7da8",
"name": "generatetoaddressメソッド",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "{\"jsonrpc\":\"1.0\",\"id\":\"nodered\",\"method\":\"generatetoaddress\",\"params\":[1,\"YOUR REGTEST ADDRESS\"]}",
"tot": "json"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 340,
"y": 140,
"wires": [
[
"d8e96432d2bd158b"
]
]
},
{
"id": "fbfbc86132047bee",
"type": "inject",
"z": "14f24bc87add7da8",
"name": "追加",
"props": [],
"repeat": "",
"crontab": "",
"once": false,
"onceDelay": 0.1,
"topic": "",
"x": 130,
"y": 140,
"wires": [
[
"e407ac8a2d7d0c2b"
]
]
},
{
"id": "9fd9087131842ee3",
"type": "debug",
"z": "14f24bc87add7da8",
"name": "debug 1",
"active": true,
"tosidebar": true,
"console": false,
"tostatus": false,
"complete": "false",
"statusVal": "",
"statusType": "auto",
"x": 580,
"y": 180,
"wires": []
}
]
3. generatetoaddressメソッドと表示された箇所をダブルクリック。赤丸の・・・をクリック。

4.YOUR REGTEST ADDRESSを自分のregtestアドレスに置換。完了をクリック。

5.Bitcond JSON-RPCと表示された箇所をダブルクリック。ユーザ名とパスワードに1.で控えたユーザー名(デフォルトではumbrel)とパスワードを入力。完了をクリック。

6.右上にあるデプロイをクリック。いままで加えた編集を確定させる。
追加の左にあるボタンをクリック。ブロックがマイニングされて追加されていることを確認する。Bitconアプリで新しいブロックが追加されていれば成功。

7.追加をダブルクリック。チェックボックスをクリックして1秒後にする。さらに以下のように設定変更する。これでUmbrelを再起動した場合でも自動的にマイニングを継続するようになる。

8.右上にあるデプロイをクリック。変更を反映させる。
おわり





