This is CodingBlocks' new code judge
All required componenets are dockerized, so you can
simply docker-compose up and get going ;)
This is the judge api server It has 3 endpoints -
- /api/runs (to run code and get output)
- /api/submissions (to evaluate testcases)
- /api/langs (to show supported languages)
Standard postgres image
Use docker-compose-withdb.yml if you want a new docker based DB
created as part of the judge deployment
Use docker-compose.yml to use your own DB (If you have your own db server)
Standard rabbitmq server to create queue of tasks
We use a standard RPC setup with a job_queue
and a success_queue
The taskmaster runs a worker when a task is received on the queue
Available workers -
- cpp
- c
- java8
- py2
Tl;DR;
Step 1:
Copy judgeapi-example.env to .env
Step 2:
docker-compose -f docker-compose-withdb.yml upCheck judgeapi-example.env