FYI... since you are using nested docker containers, networking is just a tad borked....
Add:
# [rpc] # Accept command line and JSON-RPC commands. server=1 # Bind to all interfaces to listen for JSON-RPC connections. rpcbind=0.0.0.0 rpcallowip=localnetwork/24
to /data/bitcoin/bitcoin.conf and all the sudden.... Boom!
curl -v --user umbrel --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "getblockchaininfo", "params": [] }' -H 'content-type: text/plain;' http://localnetwork:8332/ Enter host password for user 'umbrel': * Trying localnetwork:8332... * Connected to localnetwork (local network) port 8332 * Server auth using Basic with user 'umbrel' > POST / HTTP/1.1 > Host: localnetwork:8332 > Authorization: Basic dW1icmVsOmUwT0JhRHhYSkVPOXVkOE4wRGg2Rm1Vc0xycTB4MmhYX190STU2Y19mblE9 > User-Agent: curl/8.4.0 > Accept: */* > content-type: text/plain; > Content-Length: 81 > < HTTP/1.1 200 OK < Content-Type: application/json < Date: Wed, 10 Jan 2024 16:24:22 GMT < Content-Length: 451 < {"result":{"chain":"main","blocks":391790,"headers":825158,"bestblockhash":"00000000000000000615c63c8e0a94b77414cd06b60ab45cb5cf6b3adfa1ef5a","difficulty":103880340815.4559,"time":1451952411,"mediantime":1451949990,"verificationprogress":0.1118299839171059,"initialblockdownload":true,"chainwork":"0000000000000000000000000000000000000000000e7c88ecddb0a466ea274e","size_on_disk":62876754237,"pruned":false,"warnings":""},"error":null,"id":"curltest"}