fix: inject Bitcoin RPC auth into bitcoin-ui before build in first-boot

The bitcoin-ui nginx proxy needs Basic Auth to talk to Bitcoin Core RPC.
The __BITCOIN_RPC_AUTH__ placeholder was not being replaced, causing a
browser login prompt. Now injects creds from secrets dir before build.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dorian 2026-03-31 03:48:22 +01:00
parent 2344746ad5
commit 7d35827acb

View File

@ -836,6 +836,21 @@ fi
# 9. Custom UI containers (bitcoin-ui, lnd-ui)
# These are built from Dockerfiles in /opt/archipelago/docker/ or loaded from pre-built images.
# Inject Bitcoin RPC auth into bitcoin-ui nginx.conf BEFORE building
RPC_USER="archipelago"
RPC_PASS_FILE="/var/lib/archipelago/secrets/bitcoin-rpc-password"
if [ -f "$RPC_PASS_FILE" ]; then
RPC_PASS=$(cat "$RPC_PASS_FILE")
AUTH_B64=$(echo -n "${RPC_USER}:${RPC_PASS}" | base64)
for ui_dir in /opt/archipelago/docker/bitcoin-ui /home/archipelago/archy/docker/bitcoin-ui; do
if [ -f "$ui_dir/nginx.conf" ]; then
sed -i "s|__BITCOIN_RPC_AUTH__|${AUTH_B64}|g" "$ui_dir/nginx.conf"
log "Injected Bitcoin RPC auth into $ui_dir/nginx.conf"
fi
done
fi
for ui in bitcoin-ui lnd-ui; do
if $DOCKER ps --format '{{.Names}}' 2>/dev/null | grep -q "$ui"; then
continue