比特币系列 - 用docker搭BTC私链
Posted 搬砖魁首
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了比特币系列 - 用docker搭BTC私链相关的知识,希望对你有一定的参考价值。
参考: https://www.2cto.com/kf/201707/659271.html
通过docker运行BTC的私链
启动Docker.
$ service docker start
or
$ systemctl start docker
下载比特币测试网络(bitcoin-testnet)的Docker镜像。
docker pull freewil/bitcoin-testnet-box
运行Docker镜像。
$ docker run -t -i -p 19001:19001 -p 19011:19011 freewil/bitcoin-testnet-box
进入Docker运行环境后,输入下面的命令来启动比特币测试网络:
$ make start
查看测试网络节点状态信息(注意:如果装的是较新版本的bitcoind,进入docker环境后,需要先到Makefile里修改getinfo命令,改成-getinfo)
$ make getinfo
模拟新产生200个区块记录(至少需要生成100个块,第一个钱包节点账户余额会增加)
$ make generate BLOCKS=200
#################给作为示例的测试钱包地址转账10个BTC##############
为第2个钱包生成地址
$ make address2
回显的地址 2N8nax4iYqNivqVosJE5pMZUHJus3N896YJ
转账
$ make sendfrom1 ADDRESS=[生成的地址] AMOUNT=10
[例如] make sendfrom1 ADDRESS=2N8nax4iYqNivqVosJE5pMZUHJus3N896YJ AMOUNT=10
回显
bitcoin-cli -datadir=1 sendtoaddress 2N8nax4iYqNivqVosJE5pMZUHJus3N896YJ 10
9a768b7e1377444c8d32fb44d9583ac9cad7646dc5d5a2d83edcf48af8df4136
模拟新产生10个区块记录,让上面的转账交易得到足够有效的确认
$ make generate BLOCKS=10
##################################################
停止比特币测试网络
$ make stop
关闭Docker
$ service docker stop
运行自己修改过的docker(适配新版 bitcoind的命令)
$ systemctl start docker
$ docker run -t -i -p 19001:19001 -p 19011:19011 my/bitcoin-testnet-box
$ make start
$ make getinfo
$ make generate BLOCKS=10
$ make address1
$ make stop
rpc的账号密码在bitcoin.conf文件里配置
退出之前记得保存修改的镜像内容
貌似得先停止bitcoin (docker内执行)
make stop
再保存镜像,通过命令获取容器id(docker外执行)
docker container ls
再保存
docker commit 容器ID 新的镜像名 (docker外执行)
[例如] docker commit 5814f80288ac my/bitcoin-testnet-box
列出整个钱包的所有地址
bitcoin-cli -datadir=1 getaddressesbyaccount ""
列出整个钱包的所有地址和余额
bitcoin-cli -datadir=1 listaddressgroupings
显示钱包当前管理的所有地址的余额总和
bitcoin-cli -datadir=1 getbalance
列出所有交易信息
bitcoin-cli -datadir=1 listtransactions
查看单笔交易信息
bitcoin-cli -datadir=1 gettransaction 980be3d6694e905679b45d568829cfd1b73387b920b3d6e302a6b78c699bbb07
查看单笔原始数据
bitcoin-cli -datadir=1 getrawtransaction 935fc327ed8d36d971ba3147c0b7aaba695a8ba312f471c9a96706d1bb3aaa2a
解码交易的原始数据
bitcoin-cli -datadir=1 decoderawtransaction 上一条查到的原始数据
**查询地址的私钥**
bitcoin-cli -datadir=1 dumpprivkey 2MvSvdJBGSZVfdMGYXFpnDofv3ADQBeXPq4
(4)通过docker运行 参考:https://www.2cto.com/kf/201707/659271.html
启动Docker.
$ service docker start
or
$ systemctl start docker
下载比特币测试网络(bitcoin-testnet)的Docker镜像。
docker pull freewil/bitcoin-testnet-box
运行Docker镜像。
$ docker run -t -i -p 19001:19001 -p 19011:19011 freewil/bitcoin-testnet-box
进入Docker运行环境后,输入下面的命令来启动比特币测试网络:
$ make start
查看测试网络节点状态信息(注意:如果装的是较新版本的bitcoind,进入docker环境后,需要先到Makefile里修改getinfo命令,改成-getinfo)
$ make getinfo
模拟新产生200个区块记录(至少需要生成100个块,第一个钱包节点账户余额会增加)
$ make generate BLOCKS=200
#################给作为示例的测试钱包地址转账10个BTC##############
为第2个钱包生成地址
$ make address2
回显的地址 2N8nax4iYqNivqVosJE5pMZUHJus3N896YJ
转账
$ make sendfrom1 ADDRESS=[生成的地址] AMOUNT=10
[例如] make sendfrom1 ADDRESS=2N8nax4iYqNivqVosJE5pMZUHJus3N896YJ AMOUNT=10
回显
bitcoin-cli -datadir=1 sendtoaddress 2N8nax4iYqNivqVosJE5pMZUHJus3N896YJ 10
9a768b7e1377444c8d32fb44d9583ac9cad7646dc5d5a2d83edcf48af8df4136
模拟新产生10个区块记录,让上面的转账交易得到足够有效的确认
$ make generate BLOCKS=10
##################################################
停止比特币测试网络
$ make stop
关闭Docker
$ service docker stop
以上是关于比特币系列 - 用docker搭BTC私链的主要内容,如果未能解决你的问题,请参考以下文章
手机免费挖矿比特币,累计到账0.00945BTC,折合3578元!