@ -8,6 +8,11 @@ given, the rest will have sensible defaults if not specified. Many of
the defaults around resource usage are conservative; I encourage you
the defaults around resource usage are conservative; I encourage you
to review them.
to review them.
Note: by default the server will only serve to connections from the
same machine. To be accessible to other users across the internet you
must set **HOST** appropriately; see below.
Required
Required
--------
--------
@ -53,6 +58,7 @@ The following are required if you use the `run` script:
The username the server will run as.
The username the server will run as.
Miscellaneous
Miscellaneous
-------------
-------------
@ -63,12 +69,6 @@ These environment variables are optional:
Must be a *NET* from one of the **Coin** classes in `lib/coins.py`_ .
Must be a *NET* from one of the **Coin** classes in `lib/coins.py`_ .
Defaults to `mainnet` .
Defaults to `mainnet` .
Note: if you are using Bitcoin Core post the August 1st fork, you
should have NET be `bitcoin-segwit` , and if on the Bitcoin Cash
chain NET should be `mainnet` .
Note Bitcoin Core >= 0.13.1 requires a special *NET* for testnet:
`testnet-segwit` .
* * *DB_ENGINE* *
* * *DB_ENGINE* *
Database engine for the UTXO and history database. The default is
Database engine for the UTXO and history database. The default is
@ -76,13 +76,6 @@ These environment variables are optional:
install the appropriate python package for your engine. The value
install the appropriate python package for your engine. The value
is not case sensitive.
is not case sensitive.
* * *REORG_LIMIT* *
The maximum number of blocks to be able to handle in a chain
reorganisation. ElectrumX retains some fairly compact undo
information for this many blocks in levelDB. The default is a
function of **COIN** and **NET** ; for Bitcoin mainnet it is 200.
* * *HOST* *
* * *HOST* *
The host or IP address that the TCP and SSL servers will use when
The host or IP address that the TCP and SSL servers will use when
@ -101,20 +94,25 @@ These environment variables are optional:
If set then SSL_CERTFILE and SSL_KEYFILE must be defined and be
If set then SSL_CERTFILE and SSL_KEYFILE must be defined and be
filesystem paths to those SSL files.
filesystem paths to those SSL files.
* * *RPC_POR T* *
* * *RPC_HOS T* *
ElectrumX will listen on this port for local RPC connections.
The host or IP address that the RPC server will listen on and
ElectrumX listens for RPC connections unless this is explicitly set
defaults to `localhost` . To listen on multiple specific addresses
to blank. The default is appropriate for **COIN** and **NET**
specify a comma-separated list. Servers with unusual networking
(e.g., 8000 for Bitcoin mainnet) if not set.
setups might want to specify e.g. `::1` or `127.0.0.1` explicitly
rather than defaulting to `localhost` .
* * *EVENT_LOOP_POLICY* *
An empty string (normally indicating all interfaces) is interpreted
as `localhost` , because allowing access to the server's RPC
interface to arbitrary connections aacross the internet is not a
good idea.
The name of an event loop policy to replace the default asyncio
* * *RPC_PORT* *
policy, if any. At present only `uvloop` is accepted, in which case
you must have installed the `uvloop`_ Python package.
If you are not sure what this means leave it unset.
ElectrumX will listen on this port for local RPC connections.
ElectrumX listens for RPC connections unless this is explicitly set
to blank. The default depends on **COIN** and **NET** (e.g., 8000
for Bitcoin mainnet) if not set, as indicated in `lib/coins.py`_ .
* * *DONATION_ADDRESS* *
* * *DONATION_ADDRESS* *
@ -159,6 +157,22 @@ These environment variables are optional:
that **ANON_LOGS** is honoured. Defaults to 3600. Set to zero to
that **ANON_LOGS** is honoured. Defaults to 3600. Set to zero to
suppress this logging.
suppress this logging.
* * *REORG_LIMIT* *
The maximum number of blocks to be able to handle in a chain
reorganisation. ElectrumX retains some fairly compact undo
information for this many blocks in levelDB. The default is a
function of **COIN** and **NET** ; for Bitcoin mainnet it is 200.
* * *EVENT_LOOP_POLICY* *
The name of an event loop policy to replace the default asyncio
policy, if any. At present only `uvloop` is accepted, in which case
you must have installed the `uvloop`_ Python package.
If you are not sure what this means leave it unset.
Resource Usage Limits
Resource Usage Limits
---------------------
---------------------