adding wallet specific btcctl

This commit is contained in:
greg stone
2023-02-04 01:26:15 +00:00
parent 2da6987140
commit 5dfdef6c22
6 changed files with 65 additions and 19 deletions

View File

@@ -14,6 +14,14 @@ DOCKERFILES=$(find ./docker/release/targets/$TARGET_NAME -maxdepth 1 -type f -in
PLATFORMS=$(find release/$TARGET_NAME-$TARGET_TAG/bin -type d | grep -oP "(^.*/bin/\K).*" | cut -f1 -d/)
if [ -z "${RELEASE}" ]; then
PLATFORMS=(
"linux-amd64"
"linux-arm64"
"linux-arm-v7"
)
fi
echo "-- assembling images for package ${TARGET_NAME}-${TARGET_TAG}"
for DOCKERFILE in $DOCKERFILES; do

View File

@@ -20,4 +20,4 @@ USER btcd:btcd
#VOLUME ["/etc/btcd"]
#VOLUME ["/var/btcd"]
ENTRYPOINT ["/bin/btcctl", "--configfile=/etc/btcd/btcd.conf"]
ENTRYPOINT ["/bin/btcctl", "--configfile=/dev/null", "--rpccert=/etc/btcd/keys/rpc.cert"]

View File

@@ -1,7 +1,7 @@
version: '3'
services:
btcd:
image: indralabs/btcd
image: indralabs/btcd-multi-arch:linux-amd64-dev
volumes:
- config:/etc/btcd
- data:/var/btcd
@@ -15,23 +15,40 @@ services:
- "--rpcpass=simnet"
- "--simnet"
- "--txindex"
# btcctl:
# image: indralabs/btcctl
# volumes:
# - config:/etc/btcd:ro
# networks:
# indranet:
# depends_on:
# - btcd
# command:
# - "--rpcserver=172.16.42.2:8333"
# - "--rpcuser=simnet"
# - "--rpcpass=simnet"
# - "--simnet"
# - "getinfo"
- "--miningaddr=Sbw7oopnxsVkrJpox4HUrevwYsiFaLgWRW"
btcwallet:
image: indralabs/btcwallet-multi-arch:linux-amd64-dev
volumes:
- config:/etc/btcd:ro
- btcwallet_config:/etc/btcwallet
- btcwallet_data:/var/btcwallet
networks:
indranet:
ipv4_address: 172.16.42.3
command:
- "--simnet"
- "--rpcconnect=172.16.42.2:8334"
- "--username=simnet"
- "--password=simnet"
btcctl:
image: indralabs/btcctl-multi-arch:linux-amd64-dev
volumes:
- config:/etc/btcd:ro
networks:
indranet:
depends_on:
- btcwallet
command:
- "--rpcserver=172.16.42.2:8334"
- "--rpcuser=simnet"
- "--rpcpass=simnet"
- "--simnet"
- "generate 1"
volumes:
config:
data:
btcwallet_config:
btcwallet_data:
networks:
indranet:
driver: bridge

View File

@@ -0,0 +1,10 @@
#!/bin/bash
docker run --rm -it --network=btcd_indranet \  ✔
--volume=btcd_btcwallet_config:/etc/btcwallet:ro \
--volume=btcd_btcwallet_data:/var/btcwallet \
indralabs/btcctl-multi-arch:linux-amd64-dev \
--configfile=/dev/null \
--rpcserver=172.16.42.3:8332 --rpccert=/etc/btcwallet/rpc.cert \
--rpcuser=simnet --rpcpass=simnet \
--simnet --wallet $@

View File

@@ -14,7 +14,7 @@ ARG version
ADD ./release/btcwallet-${version}/bin/${platform}/btcwallet /bin
# Enable the btcd user
USER btcd:btcd
USER btcwallet:btcwallet
# Set the data volumes
#VOLUME ["/etc/btcd"]
@@ -23,4 +23,4 @@ USER btcd:btcd
# :8332 btcwallet RPC port
EXPOSE 8332
ENTRYPOINT ["/bin/btcwallet"]
ENTRYPOINT ["/bin/btcwallet", "--configfile=/dev/null", "--appdata=/var/btcwallet", "--logdir=/var/btcwallet", "--cafile=/etc/btcd/keys/rpc.cert", "--rpckey=/etc/btcwallet/rpc.key", "--rpccert=/etc/btcwallet/rpc.cert", "--rpclisten=0.0.0.0:8332"]

View File

@@ -22,8 +22,11 @@ RUN set -ex && echo "checking root filesystem" \
##
RUN set -ex && echo "adding users and groups" \
&& echo "btcwallet:*:::::::" >> /etc/shadow \
&& echo "btcwallet:x:8332:" >> /etc/group \
&& echo "btcwallet:x:8332:8332:btcwallet:/var/btcwallet:/sbin/false" >> /etc/passwd \
&& echo "btcd:*:::::::" >> /etc/shadow \
&& echo "btcd:x:8333:" >> /etc/group \
&& echo "btcd:x:8333:btcwallet" >> /etc/group \
&& echo "btcd:x:8333:8333:btcd:/var/btcd:/sbin/false" >> /etc/passwd \
&& echo "lnd:*:::::::" >> /etc/shadow \
&& echo "lnd:x:9735:" >> /etc/group \
@@ -54,6 +57,7 @@ RUN set -ex && echo "checking users and groups to root filesystem" \
##
RUN set -ex && echo "adding and permissioning /etc directories" \
&& mkdir -pv /etc/btcwallet && chmod 755 /etc/btcwallet && chown btcwallet:btcwallet /etc/btcwallet \
&& mkdir -pv /etc/btcd && chmod 755 /etc/btcd \
&& mkdir -pv /etc/btcd/keys && chmod 750 /etc/btcd/keys && chown btcd:btcd /etc/btcd/keys \
&& mkdir -pv /etc/lnd && chmod 755 /etc/lnd \
@@ -84,6 +88,7 @@ RUN set -ex & echo "adding default .conf files" \
&& chmod 755 lnd.conf && mv lnd.conf /etc/lnd
RUN set -ex && echo "copying /etc directories to root filesystem" \
&& cp -rp /etc/btcwallet /tmp/root-fs/etc/btcwallet \
&& cp -rp /etc/btcd /tmp/root-fs/etc/btcd \
&& cp -rp /etc/lnd /tmp/root-fs/etc/lnd \
&& cp -rp /etc/indra /tmp/root-fs/etc/indra
@@ -91,6 +96,7 @@ RUN set -ex && echo "copying /etc directories to root filesystem" \
# DEBUG
RUN set -ex && echo "checking /etc directories on root filesystem" \
&& ls -hal /tmp/root-fs/etc \
&& ls -hal /tmp/root-fs/etc/btcwallet \
&& ls -hal /tmp/root-fs/etc/btcd \
&& ls -hal /tmp/root-fs/etc/btcd/keys \
&& ls -hal /tmp/root-fs/etc/lnd \
@@ -98,6 +104,8 @@ RUN set -ex && echo "checking /etc directories on root filesystem" \
&& ls -hal /tmp/root-fs/etc/indra
RUN set -ex && echo "adding and permissioning /var directories" \
&& mkdir -pv /var/btcwallet && chmod 750 /var/btcwallet && chown btcwallet:btcwallet /var/btcwallet \
&& mkdir -pv /var/btcwallet/.btcwallet && chmod 750 /var/btcwallet/.btcwallet && chown btcwallet:btcwallet /var/btcwallet/.btcwallet \
&& mkdir -pv /var/btcd && chmod 750 /var/btcd && chown btcd:btcd /var/btcd \
&& mkdir -pv /var/btcd/.btcd && chmod 750 /var/btcd/.btcd && chown btcd:btcd /var/btcd/.btcd \
&& mkdir -pv /var/lnd && chmod 750 /var/lnd && chown lnd:lnd /var/lnd \
@@ -105,6 +113,7 @@ RUN set -ex && echo "adding and permissioning /var directories" \
&& mkdir -pv /var/indra && chmod 750 /var/indra && chown indra:indra /var/indra
RUN set -ex && echo "copying /var directories to root filesystem" \
&& cp -rp /var/btcwallet /tmp/root-fs/var/btcwallet \
&& cp -rp /var/btcd /tmp/root-fs/var/btcd \
&& cp -rp /var/lnd /tmp/root-fs/var/lnd \
&& cp -rp /var/indra /tmp/root-fs/var/indra
@@ -112,6 +121,8 @@ RUN set -ex && echo "copying /var directories to root filesystem" \
# DEBUG
RUN set -ex && echo "checking /var directories on root filesystem" \
&& ls -hal /tmp/root-fs/var \
&& ls -hal /tmp/root-fs/var/btcwallet \
&& ls -hal /tmp/root-fs/var/btcwallet/.btcwallet \
&& ls -hal /tmp/root-fs/var/btcd \
&& ls -hal /tmp/root-fs/var/btcd/.btcd \
&& ls -hal /tmp/root-fs/var/lnd \