Docker: pass DONATION_ADDRESS to the server, document it

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
davideandClaude Sonnet 5.5 committed 2026-10-22 16:00:42 +02:00
1 parent 0d1ebc6e3e
commit 9ef0cb0983
3 files changed
+20

No files matched your search

+2
View File
@@ -4,6 +4,8 @@ PLM_RPC_USER=username
PLM_RPC_PASSWORD=change-me
#CACHE_MB=1200
#REPORT_SERVICES=tcp://electrum.example.com:50001
# address for donations, sent to the clients; not checked by the server, so double-check it
#DONATION_ADDRESS=
#ELECTRUMX_TCP_PORT=50001
# Data directory of the host: db/ (database) and ssl/ (certificate). Create it first: mkdir -p ~/.plm-electrumx/db ~/.plm-electrumx/ssl
+16
View File
@@ -173,6 +173,22 @@ Peer discovery is on by default (`PEER_DISCOVERY`, `PEER_ANNOUNCE`). `lib/coins.
servers you know there (format: `'host s t'`, for example `'electrum.example.com s50002 t50001'`) and rebuild, or
keep the server private with `PEER_DISCOVERY=off` / `PEER_DISCOVERY=self`.
## Donation address
`DONATION_ADDRESS` in `.env` sets the address the server reports to its clients. It is optional and empty by default
(no address).
```ini
DONATION_ADDRESS=plm1q...your address...
```
- Clients get it with the Electrum protocol call `server.donation_address`; wallets that support it show it to the user.
- A banner file (`BANNER_FILE`, see `docs/environment.rst`) can contain the placeholder `$DONATION_ADDRESS`, which is
replaced with this address.
- The server does **not** check the value, it only passes it on. Check it carefully (for example send a small test
amount) and use an address you are happy to make public, since it is sent to everyone who connects.
- After changing it, apply it with `docker compose up -d` (the container is recreated with the new value).
## Data directory and first start
Create the data directory as the user that runs Docker, before the first start (otherwise Docker creates it as root and
+2
View File
@@ -11,6 +11,8 @@ services:
CACHE_MB: ${CACHE_MB:-1200}
# address announced to other servers and clients, if this server is public (tcp://host:50001)
REPORT_SERVICES: ${REPORT_SERVICES:-}
# donation address sent to the clients (server.donation_address); empty: none
DONATION_ADDRESS: ${DONATION_ADDRESS:-}
# SSL: on by default, with a self-signed certificate generated on the first start (docker-entrypoint.sh)
SSL_ENABLED: ${SSL_ENABLED:-true}
SSL_HOSTNAME: ${SSL_HOSTNAME:-electrumx}