Creates a fresh LNbits install, with Phoenixd (self-custodial, super-easy "managed" node) and url/https (using Caddy) on a VPS.
Head on over to https://lunanode.com and Create a VM. I always use 2nd to cheapest, but cheapest will do. Pick Ubuntu 24.04 64-bit (template).
You usually need to wait 10mins while the VPS provisions, so get the VPS then put the kettle on. With your cuppa ssh into the VPS.
ssh ubuntu@<THE VPS IP>
Copy across the password from the VPS on lunanode.
Create a screen for LNbits
screen -S lnbits
Fetch/install latest LNbits Appimage
sudo apt-get install jq libfuse2
wget $(curl -s https://api.github.com/repos/lnbits/lnbits/releases/latest | jq -r '.assets[] | select(.name | endswith(".AppImage")) | .browser_download_url') -O LNbits-latest.AppImage
chmod +x LNbits-latest.AppImage
LNBITS_ADMIN_UI=true HOST=0.0.0.0 PORT=5000 AUTH_HTTPS_ONLY=false ./LNbits-latest.AppImage
Exit the screen
ctrl + a + d
Create a screen for Phoenixd
screen -S phoenixd
Install phoenixd
sudo apt-get update
sudo apt-get install -y curl unzip
URL=$(curl -fsSL https://api.github.com/repos/ACINQ/phoenixd/releases/latest \
| grep browser_download_url \
| grep 'linux-x64.zip' \
| cut -d '"' -f4)
FILE=$(basename "$URL")
curl -L "$URL" -o "$FILE"
unzip -q "$FILE"
chmod +x "${FILE%.zip}/phoenixd"
exec "./${FILE%.zip}/phoenixd"
Read the disclaimers and type I understand a bunch.
Once Phoenixd is running exit the screen
ctrl + a + d
grep '^http-password=' ~/.phoenix/phoenix.conf | cut -d= -f2-
Create DNS A record to your servers IP.

https://caddyserver.com/docs/install#debian-ubuntu-raspbian
sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | sudo tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
Close caddy
sudo caddy stop
Create Caddfile
sudo nano Caddyfile
Add this to the Caddyfile.
<your url> {
reverse_proxy 0.0.0.0:5000
}
ctrl + s to save, then ctrl + x to exit.
Run caddy (it will use your Caddyfile).
sudo caddy start
Go to your url, create the Super-User, add api key to the LNbits funding source, hit restart button.
Phoenixd requires 20ksats sent in before outgoing payments are possible.
Profit 🚀
- Create a screen:
screen -S <screen name> - List all screens:
screen -ls - Attach to a screen:
screen -r <screen name> - Detach from screen:
ctrl + a + d - If you end up outside of a locked screen:
screen -d <screen name>