Browse Source

Add Core Lightning and RTL for CLN (#7)

main
Luke Childs 3 years ago
committed by GitHub
parent
commit
1c9803d535
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
  1. 0
      core-lightning-rtl/data/rtl/.gitkeep
  2. 25
      core-lightning-rtl/docker-compose.yml
  3. 1
      core-lightning-rtl/exports.sh
  4. 38
      core-lightning-rtl/umbrel-app.yml
  5. 0
      core-lightning/data/c-lightning-rest/certs/.gitkeep
  6. 0
      core-lightning/data/lightningd/.gitkeep
  7. 65
      core-lightning/docker-compose.yml
  8. 12
      core-lightning/exports.sh
  9. 7
      core-lightning/torrc.template
  10. 38
      core-lightning/umbrel-app.yml

0
core-lightning-rtl/data/rtl/.gitkeep

25
core-lightning-rtl/docker-compose.yml

@ -0,0 +1,25 @@
version: "3.8"
services:
app_proxy:
environment:
APP_HOST: $APP_CORE_LIGHTNING_RTL_IP
APP_PORT: 3000
rtl:
image: shahanafarooqui/rtl:0.12.3
restart: on-failure
environment:
PORT: 3000
APP_PASSWORD: $APP_PASSWORD
LN_IMPLEMENTATION: CLT
LN_SERVER_URL: http://${APP_CORE_LIGHTNING_REST_IP}:${APP_CORE_LIGHTNING_REST_PORT}/v1
MACAROON_PATH: /c-lightning-rest/certs
RTL_CONFIG_PATH: /data/
RTL_COOKIE_PATH: /data/.cookie
volumes:
- "${APP_DATA_DIR}/data/rtl:/data"
- "${APP_CORE_LIGHTNING_REST_CERT_DIR}:/c-lightning-rest/certs"
networks:
default:
ipv4_address: ${APP_CORE_LIGHTNING_RTL_IP}

1
core-lightning-rtl/exports.sh

@ -0,0 +1 @@
export APP_CORE_LIGHTNING_RTL_IP="10.21.21.97"

38
core-lightning-rtl/umbrel-app.yml

@ -0,0 +1,38 @@
manifestVersion: 1
id: core-lightning-rtl
category: Finance
name: Ride The Lightning (Core Lightning)
version: "0.14.2-beta"
tagline: Run your personal Lightning Network node
description: >-
Run your personal Lightning Network node, and join the future of Bitcoin today.
The Lightning Network allows ultra cheap and almost instant Bitcoin transactions.
By running a Lightning node, you can not only self-custody your Bitcoin on
Lightning, but also earn sats by routing payments on the network.
Connect Zeus Wallet, Zap, or any other wallet that supports lndconnect
to remotely manage and access your node from anywhere.
Powered by LND.
An official app from Umbrel.
developer: Umbrel
website: https://umbrel.com
dependencies:
- core-lightning
repo: https://github.com/getumbrel/umbrel-lightning
support: https://community.getumbrel.com/c/bitcoin-and-lightning
port: 3100
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
- 4.jpg
- 5.jpg
path: ""
deterministicPassword: true

0
core-lightning/data/c-lightning-rest/certs/.gitkeep

0
core-lightning/data/lightningd/.gitkeep

65
core-lightning/docker-compose.yml

@ -0,0 +1,65 @@
version: "3.8"
services:
app_proxy:
environment:
APP_HOST: $APP_CORE_LIGHTNING_IP
APP_PORT: $APP_CORE_LIGHTNING_PORT
app:
image: getumbrel/umbrel-core-lightning:v0.1.0@sha256:8586dc018f82f5663a50a11c785ceeb025f9bf1e547372f18de4a1fb3f3641e2
command: npm run dev:backend
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/lightningd:/lightningd
- "${APP_CORE_LIGHTNING_REST_CERT_DIR}:/c-lightning-rest/certs"
environment:
PORT: "${APP_CORE_LIGHTNING_PORT}"
LIGHTNING_HOST: ${APP_CORE_LIGHTNING_DAEMON_IP}
LIGHTNING_NETWORK: bitcoin
LIGHTNING_GRPC_PORT: ${APP_CORE_LIGHTNING_DAEMON_GRPC_PORT}
LIGHTNING_REST_PORT: ${APP_CORE_LIGHTNING_REST_PORT}
LIGHTNING_REST_MACAROON_PATH: "/c-lightning-rest/certs/access.macaroon"
LIGHTNING_REST_HIDDEN_SERVICE: http://${APP_CORE_LIGHTNING_REST_HIDDEN_SERVICE}
LOCAL_HOST: http://${DEVICE_DOMAIN_NAME}
CA_CERT: /lightningd/bitcoin/ca.pem
CLIENT_KEY: /lightningd/bitcoin/client-key.pem
CLIENT_CERT: /lightningd/bitcoin/client.pem
networks:
default:
ipv4_address: ${APP_CORE_LIGHTNING_IP}
c-lightning-rest:
image: saubyk/c-lightning-rest:0.7.2
restart: on-failure
ports:
- ${APP_CORE_LIGHTNING_REST_PORT}:${APP_CORE_LIGHTNING_REST_PORT}
environment:
PORT: "${APP_CORE_LIGHTNING_REST_PORT}"
PROTOCOL: "http"
volumes:
- "${APP_CORE_LIGHTNING_REST_CERT_DIR}:/usr/src/app/certs"
- "${APP_DATA_DIR}/data/lightningd:/root/.lightning"
networks:
default:
ipv4_address: ${APP_CORE_LIGHTNING_REST_IP}
lightningd:
image: elementsproject/lightningd:v0.11.1
restart: on-failure
ports:
- ${APP_CORE_LIGHTNING_DAEMON_PORT}:9735
command:
- --bitcoin-rpcconnect=${APP_BITCOIN_NODE_IP}
- --bitcoin-rpcuser=${APP_BITCOIN_RPC_USER}
- --bitcoin-rpcpassword=${APP_BITCOIN_RPC_PASS}
- --proxy=${TOR_PROXY_IP}:${TOR_PROXY_PORT}
- --bind-addr=${APP_CORE_LIGHTNING_DAEMON_IP}:9735
- --addr=statictor:${TOR_PROXY_IP}:29051
- --tor-service-password=${TOR_PASSWORD}
- --grpc-port=${APP_CORE_LIGHTNING_DAEMON_GRPC_PORT}
volumes:
- "${APP_DATA_DIR}/data/lightningd:/root/.lightning"
networks:
default:
ipv4_address: ${APP_CORE_LIGHTNING_DAEMON_IP}

12
core-lightning/exports.sh

@ -0,0 +1,12 @@
export APP_CORE_LIGHTNING_IP="10.21.21.94"
export APP_CORE_LIGHTNING_PORT="2103"
export APP_CORE_LIGHTNING_REST_IP="10.21.21.95"
export APP_CORE_LIGHTNING_REST_PORT="2104"
export APP_CORE_LIGHTNING_DAEMON_IP="10.21.21.96"
export APP_CORE_LIGHTNING_DAEMON_PORT="9736"
export APP_CORE_LIGHTNING_DAEMON_GRPC_PORT="2105"
export APP_CORE_LIGHTNING_REST_CERT_DIR="${EXPORTS_APP_DIR}/data/c-lightning-rest/certs"
rest_hidden_service_file="${EXPORTS_TOR_DATA_DIR}/app-${EXPORTS_APP_ID}-rest/hostname"
export APP_CORE_LIGHTNING_REST_HIDDEN_SERVICE="$(cat "${rest_hidden_service_file}" 2>/dev/null || echo "notyetset.onion")"

7
core-lightning/torrc.template

@ -0,0 +1,7 @@
# Core Lightning Frontend Hidden Service
HiddenServiceDir /data/app-$APP_ID
HiddenServicePort 80 $APP_PROXY_HOSTNAME:$APP_PROXY_PORT
# Core Lightning REST Hidden Service
HiddenServiceDir /data/app-$APP_ID-rest
HiddenServicePort $APP_CORE_LIGHTNING_REST_PORT $APP_CORE_LIGHTNING_REST_IP:$APP_CORE_LIGHTNING_REST_PORT

38
core-lightning/umbrel-app.yml

@ -0,0 +1,38 @@
manifestVersion: 1
id: core-lightning
category: Finance
name: Core Lightning
version: "0.14.2-beta"
tagline: Run your personal Lightning Network node
description: >-
Run your personal Lightning Network node, and join the future of Bitcoin today.
The Lightning Network allows ultra cheap and almost instant Bitcoin transactions.
By running a Lightning node, you can not only self-custody your Bitcoin on
Lightning, but also earn sats by routing payments on the network.
Connect Zeus Wallet, Zap, or any other wallet that supports lndconnect
to remotely manage and access your node from anywhere.
Powered by LND.
An official app from Umbrel.
developer: Umbrel
website: https://umbrel.com
dependencies:
- bitcoin
repo: https://github.com/getumbrel/umbrel-lightning
support: https://community.getumbrel.com/c/bitcoin-and-lightning
port: 2103
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
- 4.jpg
- 5.jpg
path: ""
defaultPassword: ""
Loading…
Cancel
Save