Browse Source

Fixed final RPC issues

umbrel-mod
reid 3 years ago
parent
commit
8152027446
  1. 7
      Dockerfile
  2. 10
      rpc/mainnet-start.sh
  3. 17
      rpc/server.js

7
Dockerfile

@ -5,8 +5,8 @@ RUN apt-get update && \
apt-get install -y xz-utils python && \
rm -rf /var/lib/apt/lists/*
RUN curl https://nodejs.org/dist/v14.18.1/node-v14.18.1-linux-x64.tar.xz --output node-v14.18.1-linux-x64.tar.xz
RUN tar xvf node-v14.18.1-linux-x64.tar.xz
RUN curl https://nodejs.org/dist/v14.18.1/node-v14.18.1-linux-arm64.tar.xz --output node-v14.18.1-linux-arm64.tar.xz
RUN tar xvf node-v14.18.1-linux-arm64.tar.xz
# urbit-bitcoin-rpc Builder container
FROM buildpack-deps:bullseye as urbit-rpc-builder
@ -25,7 +25,6 @@ ARG USERNAME=user
RUN apt-get update && \
apt-get install -y iproute2 sudo && \
rm -rf /var/lib/apt/lists/*
RUN apt-get install -y netcat curl
# Allow the new user write access to /etc/hosts
RUN groupadd -g $GID -o $USERNAME && \
@ -33,7 +32,7 @@ RUN groupadd -g $GID -o $USERNAME && \
echo "$USERNAME ALL=(ALL:ALL) NOPASSWD: /usr/bin/append-to-hosts" | tee -a /etc/sudoers
# Copy files from the builder containers
COPY --from=nodejs-builder /node-v14.18.1-linux-x64/ /usr/local/
COPY --from=nodejs-builder /node-v14.18.1-linux-arm64/ /usr/local/
COPY --from=urbit-rpc-builder /urbit-bitcoin-rpc/* /
COPY --from=urbit-rpc-builder /urbit-bitcoin-rpc/src /src

10
rpc/mainnet-start.sh

@ -1,11 +1,17 @@
#!/bin/bash
##########################
# Set host.docker.internal
sudo /usr/bin/append-to-hosts "$(ip -4 route list match 0/0 | awk '{print $3 "\thost.docker.internal"}')"
#sudo /usr/bin/append-to-hosts "$(ip -4 route list match 0/0 | awk '{print $3 "\thost.docker.internal"}')"
echo Running modified mainnet script...
# docker-compose.yml passes the folllowing env vars:
# $BITCOIN_RPC_AUTH, $BITCOIN_PORT, $BITCOIN_IP, $BITCOIN_PORT,
# $ELECTRUM_IP, and $ELECTRUM_PORT
export BITCOIN_RPC_PORT=$BITCOIN_RPC_PORT
export BITCOIN_IP=$BITCOIN_IP
export ELECTRUM_IP=$ELECTRUM_IP
export ELECTRUM_PORT=$ELECTRUM_PORT
export BITCOIN_RPC_AUTH=$BITCOIN_RPC_AUTH
export BITCOIN_RPC_PASS=$BITCOIN_RPC_PASS
export PROXY_PORT=50002
node src/server.js
node src/server.js >> /proc/1/fd/1

17
rpc/server.js

@ -5,13 +5,20 @@ const BigNumber = require("bignumber.js");
const request = require("request");
//var electrsHost = 'electrs';
const btcRpcPort = process.env.BITCOIN_RPC_PORT;
const btcIp = process.env.BITCOIN_IP;
const btcRpcPort = process.env.$BITCOIN_RPC_PORT;
const btcIp = process.env.$BITCOIN_IP;
const btcPassword = process.env.$BITCOIN_RPC_PASS;
const btcRpcUrl = `${btcIp}:${btcRpcPort}/`;
const electrsHost = process.env.ELECTRUM_IP;
const electrsPort = process.env.ELECTRUM_PORT;
const btcRpcAuth = process.env.BITCOIN_RPC_AUTH;
const electrsHost = process.env.$ELECTRUM_IP;
const electrsPort = process.env.$ELECTRUM_PORT;
const btcRpcAuth = `umbrel:${btcPassword}`;
// console.log(`INFO PROXY: btc rpc pass: ${btcCookiePass}`)
console.log(`Bitcoin IP: ${btcIp}`);
console.log(`Bitcoin port: ${btcRpcPort}`);
console.log(`Bitcoin URL: ${btcRpcUrl}`);
console.log(`Electrs IP: ${electrsHost}`);
console.log(`Electrs port: ${electrsPort}`);
console.log(`Bitcoin RPC auth: ${btcRpcAuth}`);
console.log(`INFO PROXY: Electrs host: ${electrsHost}:${electrsPort}`);
const network =

Loading…
Cancel
Save