start9labs / cln-startos Goto Github PK
View Code? Open in Web Editor NEWwrapper for building c-lightning.s9pk
License: Other
wrapper for building c-lightning.s9pk
License: Other
https://docs.corelightning.org/docs/recovery
Laptop/Desktop
Linux
5
Firefox
108
When the c-lightning REST API is enabled in CLN's Config,
And one goes to view CLN's Interfaces page,
We should be able to get some information from the REST api, yet curling the /v1/getinfo endpoint that should be available at that URL results in a 503 error:
$ curl -sk https://lskixqnpsc2cmj34tnm6mnesk5x3z65bp2dnv4jeelw3zl2q3y66qzid.local/v1/getinfo
503 Service Unavailable
It seems as though this is because 9735 and 8080 are the only ports exposed by the Dockerfile:
https://github.com/Start9Labs/c-lightning-wrapper/blob/v0.12.0.1/Dockerfile#L241
If you netstat -tap
or ss -tap
inside the container you can see that a node process is listening on port 3001 (api) and 4001 (docs) - but only using ipv6.
So it seems we're just not forwarding the .local from embassy's reverse proxy to the container's port 3001 listener. We may also need to do something in the CLN package about it not listening on ipv4 0.0.0.0:3001 if the embassy reverse proxy can't do ipv4 to ipv6 forwarding.
Additionally, I noticed I also get a 503 error when querying the json-rpc endpoint (under CLN's Interfaces page). Not sure if this is related or even an actualy problem, because I"m not sure what endpoint I should be able to hit and if it requires a special json query in the body, but its URL also seems to not work.
Expect curls to api endpoints to result in http 200's and return information.
Enable C-Lightning's Plugins CLN Rest API under Config.
Get the REST API URL from the Interfaces page
curl it as depicted above:
curl -svk https://clnrestrpcaddress.local
This might be related to #51 but I'm not sure.
We need a comprehensive user's guide to CLBOSS in instructions. CLBOSS is complicated. Probably should wait until CLBOSS properties and actions are implemented
C-Lightning reported crashing with the following:
The service c-lightning has crashed with the following exit code: 134 Details: Serving RPC on 0.0.0.0:8080 Generating a RSA private key ............+++++ ...................+++++ writing new private key to './certs/key.tmp.pem' ----- writing RSA key bitcoin-cli -rpcconnect=btc-rpc-proxy.embassy -rpcport=8332 -rpcuser=... -rpcpassword=... getblockhash 682356 exited 1 (after 99 other errors) 'error: server returned HTTP error 503 '; we have been retrying command for --bitcoin-retry-timeout=60 seconds; bitcoind setup or our --bitcoin-* configs broken? The Bitcoin backend died. lightningd: FATAL SIGNAL 6 (version v0.10.2-modded) 0x559487feb7 send_backtrace common/daemon.c:33 0x559487ff57 crashdump common/daemon.c:46 0x7fb4419a6b ??? ???:0 0x7fb4419af4 ??? ???:0 Log dumped in crash.log.20220419001924 Lost connection to the RPC socket. Lost connection to the RPC socket. Lost connection to the RPC socket. Lost connection to the RPC socket. Lost connection to the RPC socket. Lost connection to the RPC socket.Lost connection to the RPC socket. Lost connection to the RPC socket.
This is useful for replacing the protectionless in-place substitution we're currently doing in the migration to convert booleans to objects and vice versa.
See: #54 (comment)
Placeholder, as Peerswap is considered fairly early at this time
Currently only Core is available. LND allows Proxy, CL should as well
c-lightning appears (and plugins) appear to be blocking smooth shutdown
This is so bitcoind will be enforced as a dependency of c-lightning only if bitcoind is in full archival mode
This package (which used to be ~30MB) has ballooned to over 200MB in size, mostly due to adding a bunch of python stuff to deal with build errors. We need to trim the fat.
Possibly break out plugins into their own docker images
steps to reproduce:
This is technically a browser interface but isn't the "main" interface for c-lightning. But it shows up in the UI as a button.
Perhaps we should just disable?
see https://github.com/ZmnSCPxj/clboss#operating for all commands
clboss-status
: taken care of here, but could also be its own action: #56
clboss-externpay
, clboss-ignore-onchain
, clboss-notice-onchain
, clboss-unmanage
can all be actions
clboss-swaps
: could be an action or a section in properties
Laptop/Desktop
Other
startos
Firefox
127
Installed CLN from scratch and now it is stuck in
Waiting for system cert key file...
I did a search and found that I am hitting this line:
cln-startos/docker_entrypoint.sh
Lines 106 to 111 in 29f0fe7
I have no idea what's going on. My start9 /mnt
dir does not have anything.
Shouldn't CLN generate a system cert key file?
Cc @chrisguida since 48e6bbb introduce these lines.
CLN should start from a fresh install in StartOS and not be stuck in a infinite loop.
Expose CLNRest url, rune, and port in properties
Connecting to clients that use CLNRest
No response
No response
No response
In experimental features
update to new package format for 0.3.0
since c-lightning-REST cannot listen on https and http at the same time, and because zeus does not allow cleartext http over tor, we need to add a reverse proxy to do this. 443 for tor, 80 for lan (already uses reverse proxy)
also make sure the macaroon is correct
Edit: 3, 4, and 5 moved, see this comment
See lnd and bitcoind for examples of sync health checks
And probably default it to longer than 60s (upstream default).
This is because bitcoin's rpc is often slow to respond
https://lightning.readthedocs.io/lightningd-config.5.html#general-options
Optional healthcheck (if a watchtower client has been added) to let user know if (and perhaps how many) clients are online.
May also be desirable to have a watchtower server healthcheck to verify that your server can be reached by remote clients.
This may start to crowd the service page. Perhaps this real estate is being reconsidered for 036/040
Should be easy since clboss-status already outputs yaml
I've identified an issue where changes to the bitcoind RPC's user or password disrupt the operation of CLN. This issue is not related to Bitcoin v26, but rather to the services that depend on it.
When the password policy changes (as it did in Bitcoin v26), users are forced to update their passwords. This change seems to disrupt their CLN service.
The current behavior is that CLN reads RPC credentials only during configuration changes/saves. The expected behavior is for CLN to read RPC credentials on each service restart, regardless of configuration changes.
This issue needs to be addressed to prevent service disruption for old bitcoind users updating their passwords.
Ideally this should be the system-generated cert from eOS
https://github.com/Ride-The-Lightning/c-lightning-REST#security
For example, you may wish to label a watchtower as "Uncle Jim's WT" - so that you know who to contact if it goes offline
Need these values to be user configurable so users don't need to ssh in to use the funder.
Also putting them in the config allows them to be persisted across restarts.
https://medium.com/blockstream/setting-up-liquidity-ads-in-c-lightning-54e4c59c091d
Namely for better performance
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.