LnMe is a personal Bitcoin Lightning payment page/widget and self-hosted Lightning Address server.
I am trying to deploy to Heroku but am having problems connecting to my Lightning Node using the onion address. The deployment was successful but when I try to start I get the following error:
Error initializing LND client: panic: encoding/hex: invalid byte: U+0075 ‘u’
I am not sure exactly what this means. I also am wondering if I can actually connect to my LND node using the onion address (will it get routed through the router). Anyway, any help or clarification would be appreciated. I am fairly new at this stuff, so please go easy on me!
I tried deploying to Heroku and connecting to my Umbrel node. I got my LND onion address from the file./home/umbrel/umbrel/tor/data/lnd-grpc/hostname
I also created the HEX cert and macaroon as per your instructions. To create the macaroon I had to go into the lnd contain - docker exec -it lnd /bin/bash and execute:
lncli bakemacaroon onchain:read address:read invoices:read address:write invoices:write
So I think I got all of the env variables correct…
But when I deploy to Heroku - everything builds ok, but crashes on startup - I get these messages in the log
panic: exec: “tor”: executable file not found in $PATH
goroutine 1 [running]:
Process exited with status 2
State changed from starting to crashed
The buildpack is installed ok (https://github.com/iamashks/heroku-buildpack-tor-proxy.git)
When I restart - same thing. I am using a free dyno (do I need a paid one?)
Do you know:
- Why is it crashing upon startup? Is it my config info that is causing the crash
- can I acutally connect to my umbrel lnd via the lnd address above.
I added the feature request on Umbrel github.
I think is a great app to have for the node,.
Almost got it working - the final snag is the TLS certificate for the onion address - not ‘umbrel.local’
You can see the full issue thread here https://github.com/bumi/lnme/issues/25
but I copied the salient detail below.
I think that TLS cert is bound to ‘umbrel.local’ - when a request is coming from heroko - it is looking for a cert that is bound to the onion address. That is what I discern from the error messge below. So i think I need to generate a cert that is bound to the onion address then it will work.
2021/10/28 17:09:17 Error creating invoice: rpc error: code = Unavailable desc = connection error: desc = “transport: authentication handshake failed: x509: certificate is valid for localhost, umbrel.local, unix, unixpacket, bufconn, not gvcnwhe7p2xenumcusu7hv3eiunuc53krnglcy5ovmgm6oo5gdxglgyd.onion”
I got it working. You can see (and tip me at the link below). It took some gnarly commandline stuff, I had to regenerate the TLS cert with the onion address plus a few other things. I will document shortly.