おふとんの中から寝言をつぶやく

ビットコインなどの暗号(仮想)通貨関連の話題を中心に雑多に書きます。

Nekonium Explorer起動方法

Ethereum系のブロックエクスプローラ

https://github.com/nekonium/explorer

の起動方法の覚え書きです。

 

準備

nekoniumの場合、おおよそ1ヶ月に1GBほどのデータを保存しなければなりませんので、専用のボリュームを用意して、mongodbというディレクトリを作って、そこに保存するようにします。

今回forkしてきたexplorerはmongodbを使っているので、/etc/mongodb.conf の保存先を専用のボリュームのパスに変更します。

gnekoniumを起動しておきます。

 

Explorerの起動前の準備

 

explorer/tools/config.json

{
"gethPort": 8293,
"blocks": [ {"start": 0, "end": "latest"}],
"quiet": false,
"terminateAtExistingDB": false,
"listenOnly": true
}

Explorerを最初に起動するときはこのファイルを少しいじります。

最初は最新ブロックからからブロック番号0に向かって取得していきます。

 

"blocks": [ {"start": 0, "end": "latest"}],

"terminateAtExistingDB": true,

"listenOnly": false

この3行をこのように変更して、node tools/grabber.js を実行します。

このとき、最初に取得したブロック番号を控えておきます。

 

(なぜわざわざ新しい方から古い方に向かって取得していくのかは不明です。非常に面倒くさい......)

そしてその仕様のために、一度取得が終わったあと、さらにconfig.jsonを変更します。

 

"blocks": [ {"start": (さきほど控えた最新ブロック番号), "end": "latest"}],

同じようにnode tools/grabber.js を実行します。

 

短時間で次のブロックが出来てしまうので(平均19秒)、これを何度か繰り返し、すぐに次の工程に移れるように準備しておきます。

 

Explorerの起動

Explorerを通常運用するためにconfig.jsonを以下のように変更します。

{
"gethPort": 8293,
"blocks": [ {"start": (最後に取得した最新ブロック番号), "end": "latest"}],
"quiet": false,
"terminateAtExistingDB": false,
"listenOnly": true
}

 

そしてgrabber.jsをバックグラウンドで動かしたままにします。

node explorer/app.js を起動するとport3000でクライアントからの接続を待ちます。