bitpay / bitcore

A full stack for bitcoin and blockchain-based applications
https://bitcore.io/
MIT License
4.84k stars 2.08k forks source link

How to deploy bitcoin-cash-node server using bitcore and bitcoin-abc??? #1583

Open zhousi666 opened 6 years ago

zhousi666 commented 6 years ago

How to deploy bitcoin-cash-node server using bitcore and bitcoin-abc???

my question: I deploy bitcoin-cash-node server using bitcore and bitcoin-abc,and I have some question,I need some help.

//bitcore: bitcore@4.1.1 //bitcoin-abc: https://download.bitcoinabc.org/0.17.2/linux/bitcoin-abc-0.17.2-i686-pc-linux-gnu.tar.gz

first, my deployment process as follows:

  1. my operating system is centos:centos7, I did the following preparations:
    yum install -y epel-release
    yum install -y zeromq-devel gcc gcc-c++ automake autoconf libtool make git wget
    wget https://nodejs.org/download/release/latest-v8.x/node-v8.11.2-linux-x64.tar.gz /root
    cd /root
    tar --strip-components 1 -xzvf node-v* -C /usr/local
  1. install bitcore and create bitcoin-cash-node
    npm i npm@latest -g
    npm install -g --unsafe-perm bitcore@4.1.1
    bitcore create bitcoin-cash-node
    cd /root/bitcoin-cash-node
    bitcore install insight-api insight-ui
  1. download the bitcoin-abc, let the bitcoind point to bitcoin-abc/bin/bitcoind
    cd/usr/local/lib/node_modules/bitcore/node_modules/bitcore-node/bin
    wget https://download.bitcoinabc.org/0.17.2/linux/bitcoin-abc-0.17.2-x86_64-linux-gnu.tar.gz  ./
    tar -xzf bitcoin-abc-0.17.2-x86_64-linux-gnu.tar.gz
    ln -sf bitcoin-abc-0.17.2/bin/bitcoind bitcoind
  1. run the bitcore
    cd /root/bitcoin-cash-node
    bitcore start

bitcore-node.json:

    {
      "network": "livenet",
      "port": 3001,
      "services": [
        "bitcoind",
        "web"
      ],
      "servicesConfig": {
        "bitcoind": {
          "spawn": {
            "datadir": "/root/data/live.bitcoin.cash.node",
            "exec": "/usr/local/lib/node_modules/bitcore/node_modules/bitcore-node/bin/bitcoind"
          }
        }
      }
    }

debug.log

2018-06-08 07:30:51 Bitcoin ABC version v0.17.2.0-4fd0b1b
2018-06-08 07:30:51 InitParameterInteraction: parameter interaction: -whitelistforcerelay=1 -> setting -whitelistrelay=1
2018-06-08 07:30:51 Assuming ancestors of block 000000000000000000e45ad2fbcc5ff3e85f0868dd8f00ad4e92dffabe28f8d2 have valid signatures.
2018-06-08 07:30:51 Setting nMinimumChainWork=000000000000000000000000000000000000000000a0f3064330647e2f6c4828
2018-06-08 07:30:51 Using the 'sse4' SHA256 implementation
2018-06-08 07:30:51 Default data directory /root/.bitcoin
2018-06-08 07:30:51 Using data directory /root/data/live.bitcoin.cash.node
2018-06-08 07:30:51 Using config file /root/data/live.bitcoin.cash.node/bitcoin.conf
2018-06-08 07:30:51 Using at most 125 automatic connections (1048576 file descriptors available)
2018-06-08 07:30:51 Using 32 MiB out of 32 requested for signature cache, able to store 1048576 elements
2018-06-08 07:30:51 Using 32 MiB out of 32 requested for script execution cache, able to store 1048576 elements
2018-06-08 07:30:51 Using 12 threads for script verification
2018-06-08 07:30:51 scheduler thread start
2018-06-08 07:30:52 Binding RPC on address 0.0.0.0 port 8332 failed.
2018-06-08 07:30:52 HTTP: creating work queue of depth 16
2018-06-08 07:30:52 Config options rpcuser and rpcpassword will soon be deprecated. Locally-run instances may remove rpcuser to use cookie-based auth, or may be replaced with rpcauth. Please see share/rpcuser for rpcauth auth generation.
2018-06-08 07:30:52 HTTP: starting 4 worker threads
2018-06-08 07:30:52 init message: Verifying wallet(s)...
2018-06-08 07:30:52 Using BerkeleyDB version Berkeley DB 5.3.28: (September  9, 2013)
2018-06-08 07:30:52 Using wallet wallet.dat
2018-06-08 07:30:52 CDBEnv::Open: LogDir=/root/data/live.bitcoin.cash.node/database ErrorFile=/root/data/live.bitcoin.cash.node/db.log
2018-06-08 07:30:52 Bound to [::]:8333
2018-06-08 07:30:52 Bound to 0.0.0.0:8333
2018-06-08 07:30:52 Cache configuration:
2018-06-08 07:30:52 * Using 56.2MiB for block index database
2018-06-08 07:30:52 * Using 8.0MiB for chain state database
2018-06-08 07:30:52 * Using 385.8MiB for in-memory UTXO set (plus up to 286.1MiB of unused mempool space)
2018-06-08 07:30:52 init message: Loading block index...
2018-06-08 07:30:52 Opening LevelDB in /root/data/live.bitcoin.cash.node/blocks/index
2018-06-08 07:30:52 Opened LevelDB successfully
2018-06-08 07:30:52 Using obfuscation key for /root/data/live.bitcoin.cash.node/blocks/index: 0000000000000000
2018-06-08 07:30:52 Opening LevelDB in /root/data/live.bitcoin.cash.node/chainstate
2018-06-08 07:30:52 Opened LevelDB successfully
2018-06-08 07:30:52 Using obfuscation key for /root/data/live.bitcoin.cash.node/chainstate: a6180703dbbc65c8
2018-06-08 07:30:52 Upgrading utxo-set database...
2018-06-08 07:30:52 [0%]...[10%]...[20%]...[30%]...[40%]...[50%]...[60%]...[70%]...[80%]...[90%]...[100%]...[DONE].
2018-06-08 07:31:17 LoadBlockIndexDB: last block file = 2
2018-06-08 07:31:17 LoadBlockIndexDB: last block file info: CBlockFileInfo(blocks=4752, size=112031878, heights=130618...136003, time=2011-06-13...2011-07-13)
2018-06-08 07:31:17 Checking all blk files are present...
2018-06-08 07:31:17 LoadBlockIndexDB: transaction index enabled
2018-06-08 07:31:17 Initializing databases...
2018-06-08 07:31:17 Loaded best chain: hashBestChain=00000000000006d50e5d70eb52febdb7cc8f832f0e679b662ba6e895c0d35240 height=135872 date=2011-07-12 07:42:11 progress=0.003795

second, my problem description as follows:

When I run the bitcore service, the synchronization of the service block is very normal, but when I request the transaction data of the block through the insight, the service will be wrong, but the service will restart automatically. I am puzzled, I do not know where is wrong, who can help me ? and gave me a deploy documents. thank you。

ERROR:

[2018-06-08T08:49:58.011Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:49:58.012Z] info: ::ffff:172.31.3.190 "GET /insight-api/sync" 200 117 37.913 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:49:58.098Z] info: ::ffff:172.31.3.190 "GET /insight-api/status?q=getInfo" 200 207 90.614 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:49:59.680Z] info: ::ffff:172.31.3.190 "GET /insight-api/peer" 304 - 0.394 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:49:59.681Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:49:59.993Z] info: ::ffff:172.31.3.190 "GET /insight-api/block/0000000000000000003b421398b983ff7b7cdb49f07b799dcf28e6026e118971" 304 - 407.354 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:00.319Z] error: uncaught exception: Error: Non-base58 character
    at Object.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/node_modules/bs58/lib/bs58.js:51:37)
    at Function.Base58.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58.js:48:26)
    at Function.Base58Check.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58check.js:45:31)
    at Function.Address._transformString (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:279:35)
    at Address._classifyArguments (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:107:20)
    at new Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:73:19)
    at Object.Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:51:12)
    at TxController.transformOutput (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:153:27)
    at Array.map (<anonymous>)
    at TxController.transformTransaction (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:77:42)
[2018-06-08T08:50:00.324Z] error: Error: Non-base58 character
    at Object.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/node_modules/bs58/lib/bs58.js:51:37)
    at Function.Base58.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58.js:48:26)
    at Function.Base58Check.decode (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/encoding/base58check.js:45:31)
    at Function.Address._transformString (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:279:35)
    at Address._classifyArguments (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:107:20)
    at new Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:73:19)
    at Object.Address (/root/bitcore-cash-node/node_modules/bitcore-lib/lib/address.js:51:12)
    at TxController.transformOutput (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:153:27)
    at Array.map (<anonymous>)
    at TxController.transformTransaction (/root/bitcore-cash-node/node_modules/insight-api/lib/transactions.js:77:42)
[2018-06-08T08:50:00.325Z] info: Beginning shutdown
[2018-06-08T08:50:00.329Z] info: Stopping insight-ui
[2018-06-08T08:50:00.330Z] info: Stopping insight-api
[2018-06-08T08:50:00.330Z] info: Stopping web
[2018-06-08T08:50:00.331Z] info: Stopping bitcoind
[2018-06-08T08:50:01.702Z] error: RPCError: Bitcoin JSON-RPC: Request Error: connect ECONNREFUSED 127.0.0.1:8332
    at Bitcoin._wrapRPCError (/root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:449:13)
    at /root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:1684:30
    at ClientRequest.<anonymous> (/root/bitcore-cash-node/node_modules/bitcoind-rpc/lib/index.js:116:7)
    at emitOne (events.js:116:13)
    at ClientRequest.emit (events.js:211:7)
    at Socket.socketErrorListener (_http_client.js:387:9)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
[2018-06-08T08:50:01.703Z] info: ::ffff:172.31.3.190 "GET /insight-api/block/00000000000000001785f8c5f4aab2a0dd286acc0a46e936af977e62862b4298" 503 68 26.284 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.704Z] info: ::ffff:172.31.3.190 "GET /insight-api/peer" 304 - 0.244 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.704Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:50:01.716Z] info: ::ffff:172.31.3.190 web socket subscribe: inv
[2018-06-08T08:50:01.746Z] error: RPCError: Bitcoin JSON-RPC: Request Error: connect ECONNREFUSED 127.0.0.1:8332
    at Bitcoin._wrapRPCError (/root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:449:13)
    at /root/bitcore-cash-node/node_modules/bitcore-node/lib/services/bitcoind.js:1711:28
    at ClientRequest.<anonymous> (/root/bitcore-cash-node/node_modules/bitcoind-rpc/lib/index.js:116:7)
    at emitOne (events.js:116:13)
    at ClientRequest.emit (events.js:211:7)
    at Socket.socketErrorListener (_http_client.js:387:9)
    at emitOne (events.js:116:13)
    at Socket.emit (events.js:211:7)
    at emitErrorNT (internal/streams/destroy.js:64:8)
    at _combinedTickCallback (internal/process/next_tick.js:138:11)
[2018-06-08T08:50:01.747Z] info: ::ffff:172.31.3.190 "GET /insight-api/blocks?limit=5" 503 68 0.948 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.766Z] info: ::ffff:172.31.3.190 "GET /insight-api/peer" 304 - 0.186 "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.139 Safari/537.36" 
[2018-06-08T08:50:01.783Z] info: ::ffff:172.31.3.190 web socket subscribe: sync
[2018-06-08T08:50:08.839Z] warn: ZMQ disconnect: tcp://127.0.0.1:28332
[2018-06-08T08:50:08.840Z] warn: ZMQ connection delay: tcp://127.0.0.1:28332
[2018-06-08T08:50:08.840Z] warn: ZMQ connection delay: tcp://127.0.0.1:28332
m24927605 commented 6 years ago

Here is my install steps,you can check it. https://github.com/m24927605/BCH_Bitcore_v5.x_InsightAPI https://github.com/m24927605/bitcore-node-v8-node.git