Troubleshooting
Health Check
Run the health check script:
bash health.sh
All services should show green. If any show red, check the logs:
docker logs lthn-daemon
docker logs lthn-wallet
docker logs lthn-explorer
docker logs lthn-trade-api
docker logs lthn-pool
docker logs lthn-lns
Common Issues
Daemon crashes on start
Symptom: lthn-daemon shows Restarting in docker compose ps
Causes:
- Port already in use — another process is on 46941. Kill it or change
DAEMON_RPC_PORTin.env - Corrupt chain data — remove volume:
docker volume rm docker_chain-data - Lock file — previous daemon didn't shut down cleanly. Remove
/data/lock.lckinside the volume
Wallet shows 0 balance
Causes:
- New wallet — Docker creates a fresh wallet on first start. Mine or receive LTHN
- Wallet syncing — check daemon height vs wallet's last known block
- Wrong wallet file — if migrating, mount the existing wallet via
docker-compose.local.yml
Pool shows "Daemon died"
Cause: Pool can't reach daemon or wallet RPC.
Fix: Check both daemon and wallet are healthy:
docker compose -f docker-compose.pull.yml ps daemon wallet
The pool needs the daemon health check to pass before starting.
Explorer shows "offline"
Cause: Explorer can't reach daemon RPC.
Fix: Wait for daemon to fully sync. The explorer connects to daemon:36941 inside the Docker network.
Trade API returns connection errors
Cause: DNS resolution inside Docker network failed.
Fix: Restart the trade-api container:
docker compose -f docker-compose.pull.yml restart trade-api
Port already in use
Symptom: failed to bind host port: address already in use
Fix: Either kill the process using the port or change the port in .env:
# Find what's using the port
lsof -i :46941
# Or change port
echo "DAEMON_RPC_PORT=47941" >> .env
docker compose -f docker-compose.pull.yml up -d
Services can't find each other
Cause: Container was created outside of compose (manual docker run).
Fix: Remove it and let compose recreate it:
docker rm -f lthn-trade-api
docker compose -f docker-compose.pull.yml up -d trade-api
Reset Everything
# Stop and remove all containers and volumes
docker compose -f docker-compose.pull.yml down -v
# Start fresh
docker compose -f docker-compose.pull.yml up -d
This will delete all chain data, wallet files, and databases.