1.服务器
需要1T NVMe 硬盘,最好是裸硬盘,云盘io性能太差,建议物理机(裸金属主机)+本地SSD。
2.带宽
越高越好,建议国外服务器,1G带宽不限流量
3.操作系统
建议centos7/8,或ubuntu,这里均以centos为例
4.准备环境:
yum update -y
yum install screen iftop iotop -y
5.创建一个screen
screen -S btc
*注意1:最后退出时用ctrl+ad(顺序按a和d字母即可),绝对不要用exit或ctrl+d退出会话。
*注意2:退出会话后,可以用screen -r btc重新连接到会话。这样可以保持在shell下运行,网络中断不会影响。
6.安装bitcoin客户端
#这里我的数据目录,可以根据需要自行更改
mkdir -p /data1/btc/data
#下载最新版本,今天的最新版本是22.0
cd /root
wget -O bitcoin-22.0.tar.gz https://bitcoincore.org/bin/bitcoin-core-22.0/bitcoin-22.0-x86_64-linux-gnu.tar.gz
tar -zxvf bitcoin-22.0.tar.gz
7.编辑并上传配置文件:/data1/btc/bitcoin.conf
datadir=/data1/btc/data
wallet=btc20211107 #随便取个名字,其实用不到这个
testnet=0 # 0 - 主网 1 - 测试网
regtest=0 # 是否以私有链模式运行:0 - 否 1 - 是
#gen=0 # 设置 gen=1 以尝试比特币挖矿
#daemon=1 # 后台执行
#proxy=127.0.0.1:9050 # 是否使用socks5代理,默认关闭
#bind=<addr> # 注释此行,表示使用默认监听地址
#whitebind=<addr>
#addnode=69.164.218.197 # 可添加多个
#addnode=10.0.0.2:8333
#connect=69.164.218.197
#listen=1
#maxconnections=10 #入站/出站最大连接数
server=1 # 是否启动JSON-RPC接口: 0 - 不启动 1 - 启动
txindex=1
rpcbind=0.0.0.0
rpcport=8432 #端口可以自行修改
rpcuser=admin #用户名自行修改
rpcpassword=123456 #密码自行修改,但最好不要有特殊字符,像@
rpcallowip=0.0.0.0/0 #可以添加多个
#rpcallowip=0.0.0.0/0 #可以添加多个
#rpcallowip=192.168.0.0/16
#rpcconnect=127.0.0.1
#txconfirmtarget=6 #交易最小确认数,默认值:6
#paytxfee=0.000x #paytxfee:每次发送比特币时的交易费
#txconfirmtarget=n
#paytxfee=0.000x
#keypool=100
#prune=550
#min=1 #是否启动后最小化
#minimizetotray=1 #是否最小化到系统托盘
8.设置防火墙
firewall-cmd --permanent --zone=public --add-port=8432/tcp
firewall-cmd --permanent --zone=public --add-port=8433/tcp
firewall-cmd --reload
不懂防火墙配置的,可以直接先禁用防火墙,关于firewalld的使用技巧,之后会单独写一篇教程
9.启动客户端
ulimit -n 65535
cd /root/bitcoin-22.0
/root/bitcoin-22.0/bin/bitcoind -port=8433 -conf=/data1/btc/bitcoin.conf
*然后按ctrl+ad回到主会话即可
10.测试验证(以下列出几种方式,可以看自己喜好)
curl --user admin:123456 --data-binary '{"jsonrpc": "1.0", "id": "1", "method": "getindexinfo", "params": []}' -H 'content-type: text/plain;' http://127.0.0.1:8432/
或
curl --data-binary '{"jsonrpc":"1.0","id":"1","method":"getindexinfo","params":[]}' -H 'content-type:text/plain;' http://admin:123456@127.0.0.1:8432/
或:
/root/bitcoin-22.0/bin/bitcoin-cli -rpcconnect=127.0.0.1 -rpcuser=admin -rpcpassword=123456 -rpcport=8432 getindexinfo
11.停止节点
方式1:(建议,毕竟停止后还要启动不是)
screen -r btc
按ctrl+c,等待一会即可看到节点停止
方式2:
任意会话中输入命令:
/root/bitcoin-22.0/bin/bitcoin-cli -rpcconnect=127.0.0.1 -rpcuser=admin -rpcpassword=123456 -rpcport=8432 stop
12.接口文档参考
https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list
https://developer.bitcoin.org/reference/rpc/index.html
太多了,大家可以搜下,网上有很多
13.注意事项
同步到最高区块所需时间:
需要看网络带宽和磁盘io性能,我用NVMe的裸盘,读写1500到2000左右,1G的国外带宽,大概同步几个小时即可(没有具体去算,应该5、6个小时,最高不到12个小时)。
带宽最高使用到100MB/s左右。
如果花了一天以上没有同步到最新,有可能是服务器存在瓶颈,还是建议用国外物理机,10M带宽基本上不怎么够用,建议至少100M的带宽,不需要cn2线路,成本并不高。
posted on 2021-11-14 23:36
方伟的博客 阅读(946)
评论(0) 编辑 收藏 所属分类:
区块链