Add Core Lightning and RTL for CLN (#7)

This commit is contained in:
Luke Childs 2022-06-07 18:10:58 +07:00 committed by GitHub
parent c71a79859f
commit 1c9803d535
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
10 changed files with 186 additions and 0 deletions

View File

View File

@ -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}

View File

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

View File

@ -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

View File

View File

@ -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 Normal file
View File

@ -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")"

View File

@ -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

View File

@ -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: ""