A fast ordinals and exotic sats indexer written in Go. The indexer exposes a REST API which you can use to build sat hunting tools, ordinals wallets and other ordinals services.
- Bitcoind node
- Esplora backend (optional, only if you need address index)
- 32 GB RAM
- 8 Core CPU
- ~250 GB SSD for the indexer db (Dec 2023)
- Make sure that bitcoind is running and synced. Bitcoind should be available at
http://bitcoind:8332
orhttp://localhost:8332
- Set up directory for the indexer db
- Run
docker run -d --name exotic-indexer \
-v ./index-dir:/db \
-v ./bitcoind-root-dir:/bitcoin \
--stop-timeout 900 \
-e BITCOIN_RPC_HOST=bitcoin \
-e BITCOIN_RPC_PORT=8332 \
-e DATA_DIR=/db \
-e BITCOIND_DIR=/bitcoin \
-e ESPLORA_URL=https://blockstream.info/api/ \
lebonchasseur/exotic-indexer:master
If you want to run for testnet there is no difference, just point to the testnet bitcoind directory
docker run -d --name exotic-indexer \
-v ./index-dir:/db \
-v ./bitcoind-root-dir:/bitcoin \
--stop-timeout 900 \
-e BITCOIN_RPC_HOST=bitcoin \
-e BITCOIN_RPC_PORT=8332 \
-e DATA_DIR=/db \
-e BITCOIND_DIR=/bitcoin/testnet3 \
-e ESPLORA_URL=https://blockstream.info/testnet/api/ \
lebonchasseur/exotic-indexer:master
You can also build your own docker image docker build -t exotic-indexer .
and run it with the same command as above.
- Rename
env
to.env
and substitute the values for your system - Run
docker compose up
in the root directory to bring up the testnet instance of bitcoind- the
bitcoind
container is configured to usearm64v8
by default for Apple sillicon support. Adjust this for your system.
- the
go get -v
- Run and debug with VS Code or the editor of your choice