Blockstream/electrs
最終更新日: 2025/07/13
最初はタグを付けていたようだが、今はブランチnew-index
をビルドしている。
用途
オリジナルのromanz/electrsをベースにしている。
Electrm Server APIだけでなくEsplora HTTP APIも使用できる。
インストール
Raspberry Pi3 を新規立ち上げした環境でビルドした。
Rust だけでなくclang
がインストールされていないとビルドエラーになる。
cmake
も必要らしいが、私の時にはなくてもビルドできたようだ。
またulimit -n 100000
などしてオープンできるファイル数を拡大しておくことを推奨している。
Raspberry Pi3 だったためか非常に時間がかかった。
書いてあるままのcargo run
でやったため、見たときには実行されていて
実行
config.toml
は使わず引数ですべて指定する。
--cookie
は、未設定なら~/.bitcoin/.cookie
から読むが、そうでなければ"<rpcuser>:<rpcpassword>"
を設定する。
なのでrpcauth
でなくても使えるのかもしれないが確認はしていない。
$ electrs --db-dir="/mnt/usb/electrs-data" \
--network="gtest" \
--cookie="testuser:testpass" \
--electrum-rpc-addr="127.0.0.1:50001"
Electrum Protocolが使用できるようになっていればOK。
$ echo '{"jsonrpc": "2.0", "method": "server.version", "params": ["", "1.4"], "id": 0}' | netcat 127.0.0.1 50001
{"id":0,"jsonrpc":"2.0","result":["electrs-esplora 0.4.1","1.4"]}
Esplora APIも使用できる。
アドレスはelectrs
起動時のログでhttp_addr
を見ると良い。
$ curl http://127.0.0.1:3002/block-height/1
79900ad51d7e6a8aed2a17570dd5a324134693af6e59df973f6a3bec16de12a5
writer: hiro99ma