Our project uses Docker Compose. Please install Docker and Docker Compose using the official documentation:
For windows users, once it's installed, you may have to use powershell
or equivalent in order to type (replace ... with your MAIN_ADDRESS
):
MAIN_ADDRESS=... rss=1 bit=1 jvc=1 ch4=1 for=1 hac=1 mas=1 nos=1 a7d=1 ap9=1 lem=1 wei=1 fol=1 you=1 tra=1 new=1 docker compose -f spotters.yaml -f docker-compose.yaml up -d
This will launch a spotter for every possible driver. You are then able to configure their distribution based on your liking.
MAIN_ADDRESS
rewarded eth walletUPIPE_SIZE
: allow to spawn multipleupipe
service, which are responsible for CPU unit-processingUPIPE_PROCESSING_TIMEOUT
: allows you to specify the timeout on CPU processing logic, a short time can be used on better machine while slower machine will fall in the 8s range.
TRACE
: enable tracing (this requires the `monitoring stack to be set up, please ignore if you don't know what this is)
- with automaticly managed spotters (2 spotters)
MAIN_ADDRESS=... SPOTTERS_AMOUNT=2 docker compose up -d
- only core
MAIN_ADDRESS=... docker compose up -d
You can enable GPU processing on your bpipe
instance using the gpu.yaml
MAIN_ADDRES=... docker compose -f docker-compose.yaml -f gpu.yaml up -d
image | Image size | description | Version | Pulls |
---|---|---|---|---|
transactioneer | Web3 interaction | |||
bpipe | Batch processing | |||
upipe | Unit processing | |||
orchestrator | Orchestration & Monitoring |
spotters.yaml
provides an easy way to launch the different spotters with different redundancy parameters, each module is parametrable with it's three first leters (jumping over spot
)
rss=1 bit=1 jvc=1 ch4=1 for=1 hac=1 mas=1 nos=1 a7d=1 ap9=1 lem=1 wei=1 fol=1 you=1 tra=1 docker compose -f spotters.yaml up -d
The spotters.yaml
is connected with services in docker-compose
trough a docker network called exorde-network
. You do not have to launch them together as they will automaticly reach out.
2️⃣ Spotters
-
Pushing data is as simple as making a
POST
request to aupipe
instance on/
-
You can use
orchestrator
to streamline the access to your different services,curl 'http://orchestrator/get?network.exorde.service=upipe' -> will return a list of `upipe` ips
You select a random one and are ready to push data
note: all services use port 8000
⚠️ We infer the location of each service at runtime because of live-update which cause your services location to be inconsistent in time. This is NOT an option if you want something stable, EVEN if your customspotters
are not updated (exorde ones are) theupipe
,bpipe
etc.. ARE