LnVisualizer or Lightning Network Visualizer, is a graph visualization tool specifically made to draw the lightning network.
Visit lnvisualizer.com to see the network from my nodes perspective.
docker run -d --rm --network=umbrel_main_network --name=lnvisapi -e LND_SOCKET=10.21.21.9:10009 -e LND_MACAROON_FILE=/lnd/data/chain/bitcoin/mainnet/readonly.macaroon -e LND_CERT_FILE=/lnd/tls.cert -v /home/umbrel/umbrel/lnd:/lnd maxkotlan/ln-visualizer-api:v0.0.19 &&
docker run -d --rm --network=umbrel_main_network --name=lnvisweb -e LN_VISUALIZER_API_URL=http://lnvisapi:5647 -p 0.0.0.0:5646:80 maxkotlan/ln-visualizer-web:v0.0.19
After executing this command, two additional containers should run on your umbrel node and you should be able to access the app at http://umbrel.local:5646
Install docker and docker-compose
download the docker compose file
wget https://raw.githubusercontent.com/MaxKotlan/LN-Visualizer/main/docker-compose.yml
Update the version tag for both the api and the web
...
lnvisweb:
image: maxkotlan/ln-visualizer-web:latest
restart: on-failure
...
to
...
lnvisweb:
image: maxkotlan/ln-visualizer-web:v0.0.19
restart: on-failure
...
and change the api image tag from
...
lnvisapi:
image: maxkotlan/ln-visualizer-api:latest
restart: on-failure
...
to
...
lnvisapi:
image: maxkotlan/ln-visualizer-api:v0.0.19
restart: on-failure
...
You can find the latest version by looking at this side panel
Edit the environment section for the api in the docker-compose.yml
You can pass in base64 encoded credentials as environment variables.
To get base64 credentials see https://github.com/alexbosworth/lightning#lnd-authentication for instructions on how to convert tls.cert
and readonly.macaroon
into base64.
...
stop_grace_period: 1m
environment:
LND_CERT: 'your base64 lnd tls certificate'
LND_MACAROON: 'your base64 readonly macaroon'
LND_SOCKET: 'ip address and port eg. umbrel.local:10009 or 127.0.0.1:10009'
alternatively, you can pass in the file location to your macaroon and cert directly.
...
stop_grace_period: 1m
environment:
LND_CERT_FILE: 'path to lnd.cert eg. /lnd/tls.cert'
LND_MACAROON_FILE: 'path to lnd.cert eg. /lnd/data/chain/bitcoin/mainnet/readonly.macaroon'
LND_SOCKET: umbrel.local:10009
If you want to reference the file directly, you need to also mount a volume to the lnd folder to pass the files into the docker container.
You can do this by adding this section to the docker-compose.yml
file. The left side of the colon is the path on the host machine, the right side is the path in the docker container. Make sure the environment var paths from the line above are from the perspective of the docker container.
volumes:
'/home/umbrel/umbrel/lnd:/lnd:ro'
start the application running the following command
docker-compose up -d
connect to the application by going to if running on the same machine, connect by going to: http://127.0.0.1:5646 if running on umbrel, connect by going to: http://umbrel.local:5646
stop the application by running the following command in the same folder with the docker-compose.yml
file
docker-compose down
Coming soon
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.