How to host your own?
Prerequisites
Not much, really.
- Electrum server running with indexed blockchain data. Ideally with Websocket support, but not required, you can use proxy.
- Git + Docker
Configuring Electrum server
Due to the nature of web technologies, Btceed can’t communicate with Electrum server directly over TCP. Some Electrum server implementations support Websocket protocol. If that’s your case, you don’t need a proxy.
ws = 0.0.0.0:50003 in your Fulcrum config. tcp = 0.0.0.0:50001 present in your config. You probably already have this enabled for other services like Sparrow Wallet. Running Btceed
-
Clone the repo.
git clone https://github.com/pycanis/btceed.git -
Set environmental variables located in
app/.env.Point
VITE_ELECTRUM_WS_SERVER_URLto your Electrum server (if using proxy -ws://localhost:7000or other valid hostname / IP address).VITE_BLOCKCHAIN_EXPLORER_URLto your self-hosted blockchain explorer. By default, mempool space is used. -
Start Docker container(s) as described below.
-
Simply run
docker compose up app -din the root of the repo. -
Btceed should be running on
http://localhost:5234.
-
Set
ELECTRUM_HOSTandELECTRUM_PORTinproxy/.env. The port should point to TCP port of your Electrum server.ELECTRUM_USE_SSLshould betrueif your Electrum server uses SSL. -
In the root of the repo, run
docker compose up -d. -
Btceed should be running on
http://localhost:5234.
In ideal scenario, you should also put reverse proxy in front of Btceed to get the SSL termination.