Ejecute lightning-charge en c-lightning regtest

Estoy tratando de ejecutar lightning-charge ( https://github.com/ElementsProject/lightning-charge ) encima de una de mis 2 instancias de lightning ( https://github.com/ElementsProject/lightning ). Estoy ejecutando 2 nodos usando el script aquí: lightning/contrib/startup_regtest.sh. Este archivo iniciará una instancia de bitcoin, así como 2 nodos de rayos ( /tmp/l1-regtest, /tmp/l2-regtest)

Luego traté de ejecutar lightning-charge con:

$ NETWORK=regtest charged --api-token super_secret_1 --ln-path ~/.lightning --db-path ~/charge1.db --port 9112

Lo que me da este error:

Lightning client connection error { Error: connect ECONNREFUSED ~/.lightning
    at Object._errnoException (util.js:1022:11)
    at _exceptionWithHostPort (util.js:1044:20)
    at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1198:14)
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect',
  address: '~/.lightning' }
events.js:183
      throw er; // Unhandled 'error' event
      ^

Error: connect ECONNREFUSED ~/.lightning
    at Object._errnoException (util.js:1022:11)
    at _exceptionWithHostPort (util.js:1044:20)
    at PipeConnectWrap.afterConnect [as oncomplete] (net.js:1198:14)

También he intentado ejecutarlo con ln-pathset to/tmp/l1-regtest/

puedo ps auxver que el rayo se está ejecutando con este comando:

~/git/lightning/lightningd/lightningd --lightning-dir=/tmp/l1-regtest
and
~/git/lightning/lightningd/lightningd --lightning-dir=/tmp/l2-regtest

¿ Alguien sabe cómo conectarme lightning-chargea mi nodo Lightning de registro?

Hay instrucciones sobre cómo hacer esto en la ventana acoplable en el archivo Léame ( https://github.com/ElementsProject/lightning-charge/blob/master/README.md ), pero no parece funcionar fuera de la ventana acoplable.

¿La carga del rayo se conecta a través de un puerto al rayo? Me acabo de dar cuenta de que el rayo de registro no usa el puerto predeterminado 9735, sino que en realidad usa 6060 y 9090
Supongo que podría ejecutarlo en la ventana acoplable y montar los directorios Lightning y Bitcoin. Explica cómo hacerlo en el archivo Léame. Sin embargo, es bastante complicado, así que esperaba evitar usar la ventana acoplable. Informaré después de haberlo probado.

Respuestas (1)

el problema está en su llamada de chargedque está pasando el argumento --ln-path ~/.lightningasumiendo que ejecuta un rayo en su directorio de inicio, por lo que debe configurarlo ln-pathen /tmp/l1-regtest/.

Ahora dices que esto tampoco funcionó. Entonces, antes de darte una solución, déjame explicarte lo que realmente está sucediendo. chargedse comunica lightningda través de una interfaz rpc en un socket de dominio UNIX. En versiones anteriores de lightningdhabía un archivo llamado lightning-rpcen la carpeta que especificó, lightning-dirsin embargo lightningd, recientemente cambió su API para tener subdirectorios lightning-dirpara mainnet, testnet y regtest. (la razón fue que, en particular, en el directorio predeterminado, las personas querían tener diferentes configuraciones para mainnet, testnet y regtest)

Por lo tanto, asumo que encontrará lightning-rpccuando lo haga ls /tmp/l1-regtest/regtest, lo que significa que debe pasar el tmp/l1-regtest/regtestin --ln-pathcuando llame charged. Si ese no es el caso, tendría que ver otro mensaje de error.

¡Funciona! gracias y gracias por hacer todos esos videos de yt!