1、下载doge启动包,doge下载地址
releases地址
mkdir /data/doge
wget https://github.com/dogecoin/dogecoin/releases/download/v1.14.7/dogecoin-1.14.7-x86_64-linux-gnu.tar.gz
2、编写Dockerfile、dogecoin.conf和docker-compose.yaml文件
Dockerfile
FROM ubuntu:20.04
# 安装依赖库和工具
RUN apt-get update && apt-get install -y \
curl \
libssl-dev \
libevent-dev \
software-properties-common
ADD dogecoin-1.14.7-x86_64-linux-gnu.tar.gz .
# 解压并复制二进制文件到 /usr/local/bin 目录
RUN mv dogecoin-1.14.7/bin/dogecoind /usr/local/bin/ && \
mv dogecoin-1.14.7/bin/dogecoin-cli /usr/local/bin/ && \
rm -rf dogecoin-1.14.7
# 配置 Bitcoin Cash 节点
COPY dogecoin.conf /root/.dogecoin/dogecoin.conf
# 暴露节点端口
EXPOSE 22555 22556
# 启动 Bitcoin Cash 节点
CMD ["/usr/local/bin/dogecoind", "--conf=/root/.dogecoin/dogecoin.conf"]
dogecoin.conf
server=1
txindex=1
listen=1
addressindex=1
timestampindex=1
spentindex=1
rpcbind=0.0.0.0:22555
rpcallowip=0.0.0.0/0
rpcport=22555
rpcuser=root
rpcpassword=123456
uacomment=dogecoin
datadir=/dogecoin/data
docker-compose.yaml
version: '3'
services:
doge-node:
image: devocenter/dogecoin
volumes:
- ./dogecoin.conf:/root/.dogecoin/dogecoin.conf
- ./data:/dogecoin/data
restart: always
ports:
- 22555:22555
- 22556:22556
3、打镜像
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker build -t devocenter/dogecoin .
[+] Building 1.7s (11/11) FINISHED docker:default
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 682B 0.0s
=> [internal] load metadata for docker.io/library/ubuntu:20.04 1.6s
=> [auth] library/ubuntu:pull token for registry-1.docker.io 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [1/5] FROM docker.io/library/ubuntu:20.04@sha256:21ae67bf44d1d0a53ecdce48742c766e44aea4d16e18a3b88a3888eddaf782b5 0.0s
=> [internal] load build context 0.0s
=> => transferring context: 311B 0.0s
=> CACHED [2/5] RUN apt-get update && apt-get install -y curl libssl-dev libevent-dev software-properties-common 0.0s
=> CACHED [3/5] ADD dogecoin-1.14.7-x86_64-linux-gnu.tar.gz . 0.0s
=> CACHED [4/5] RUN mv dogecoin-1.14.7/bin/dogecoind /usr/local/bin/ && mv dogecoin-1.14.7/bin/dogecoin-cli /usr/local/bin/ && rm -rf dogecoin-1.14.7 0.0s
=> [5/5] COPY dogecoin.conf /root/.dogecoin/dogecoin.conf 0.0s
=> exporting to image 0.0s
=> => exporting layers 0.0s
=> => writing image sha256:40b979374d5cc8d2385a17a5fa82b57a6f1e339f821a408d7540a0c7eaaf6660 0.0s
=> => naming to docker.io/devocenter/dogecoin
镜像打tag
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker tag 40b979374d5c devocenter/dogecoin:v1.14.7
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
devocenter/dogecoin latest 40b979374d5c 9 minutes ago 365MB
devocenter/dogecoin v1.14.7 40b979374d5c 9 minutes ago 365MB
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker push devocenter/dogecoin
Using default tag: latest
The push refers to repository [docker.io/devocenter/dogecoin]
37d8c355a381: Layer already exists
e4993a208b29: Layer already exists
dda8f5244c69: Layer already exists
9de7d6e778cc: Layer already exists
e915d510ff2b: Layer already exists
latest: digest: sha256:5c140a77fdbeef38b9617b49faa3ce8aa507190d199d782711f82ef8f6ca4042 size: 1371
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker push devocenter/dogecoin:v1.14.7
The push refers to repository [docker.io/devocenter/dogecoin]
37d8c355a381: Layer already exists
e4993a208b29: Layer already exists
dda8f5244c69: Layer already exists
9de7d6e778cc: Layer already exists
e915d510ff2b: Layer already exists
v1.14.7: digest: sha256:5c140a77fdbeef38b9617b49faa3ce8aa507190d199d782711f82ef8f6ca4042 size: 1371
4、启动容器
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker-compose up -d
WARN[0000] /data/doge/docker-compose.yaml: `version` is obsolete
[+] Running 2/2
✔ Network doge_default Created 0.0s
✔ Container doge-doge-node-1 Started 0.2s
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b08403de8a2c devocenter/dogecoin "/usr/local/bin/doge…" 7 seconds ago Up 7 seconds 0.0.0.0:22555-22556->22555-22556/tcp, :::22555-22556->22555-22556/tcp doge-doge-node-1
5、节点验证
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker exec -it doge-doge-node-1 /bin/bash
# dogecoin-cli获取节点最新同步高度
root@65856407c997:/# dogecoin-cli -conf=/root/.dogecoin/dogecoin.conf getblockchaininfo
{
"chain": "main",
"blocks": 12800,
"headers": 714000,
"bestblockhash": "2c719a466b12c1a67c261b0d9f45e563b779d354b81345c314661447d6293348",
"difficulty": 41.03039685392929,
"mediantime": 1387127315,
"verificationprogress": 0.001258483093197359,
"initialblockdownload": true,
"chainwork": "0000000000000000000000000000000000000000000000000001a2ac41168b66",
"size_on_disk": 109831624,
"pruned": false,
"softforks": [
{
"id": "bip34",
"version": 2,
"reject": {
"status": false
}
},
{
"id": "bip66",
"version": 3,
"reject": {
"status": false
}
},
{
"id": "bip65",
"version": 4,
"reject": {
"status": false
}
}
],
"bip9_softforks": {
"csv": {
"status": "defined",
"startTime": 1462060800,
"timeout": 1493596800,
"since": 0
}
},
"warnings": ""
}
# 获取节点同步最新区块高度
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# curl --user root:123456 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockcount", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:22555
{"result":18066,"error":null,"id":"curltest"}
# 获取节点同步最新区块信息
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# curl --user root:123456 --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }' -H 'content-type: text/plain;' http://127.0.0.1:22555
{"result":{"chain":"main","blocks":20636,"headers":968000,"bestblockhash":"f5fb4a6b6479f998568583b289f53d7d1b18c6274dbb48afb5551a92c3b5ab7d","difficulty":343.1643109902023,"mediantime":1387573156,"verificationprogress":0.00388236418402068,"initialblockdownload":true,"chainwork":"000000000000000000000000000000000000000000000000001530a073270b80","size_on_disk":357103362,"pruned":false,"softforks":[{"id":"bip34","version":2,"reject":{"status":false}},{"id":"bip66","version":3,"reject":{"status":false}},{"id":"bip65","version":4,"reject":{"status":false}}],"bip9_softforks":{"csv":{"status":"defined","startTime":1462060800,"timeout":1493596800,"since":0}},"warnings":""},"error":null,"id":"curltest"}
doge节点钱包设置密码
root@iZt4n6qi8yq5skigf2kwxwZ:/data/doge# docker exec -it doge-doge-node-1 /bin/bash
root@b08403de8a2c:/# dogecoin-cli --conf=/root/.dogecoin/dogecoin.conf encryptwallet Doge@2024
wallet encrypted; Dogecoin server stopping, restart to run with encrypted wallet. The keypool has been flushed and a new HD seed was generated (if you are using HD). You need to make a new backup.