Skip to content

chawinkn/judge-ma-di

Repository files navigation

Programming Judge System

Judge Ma Di (จัดมาดิ๊)

Stack

  • Rust
  • Axum (Rust API Framework)
  • RabbitMQ (Queue)
  • IOI Isolate (Sandbox Environment)
  • PostgreSQL (Database)
  • Docker (Containerization)

Env

  • MAX_WORKER: Maximum number of concurrent workers (Default = 1)

With Docker

Setup the services environment or other settings in docker-compose.yml

You can change the isolate version (cgroup v1 or v2) in Dockerfile

$ docker compose up -d

Without Docker

Setup env

$ cp .env.example .env
$ vim .env

Install isolate and testlib

$ bash setup.sh

Start RabbitMQ

enable only rabbitmq in docker-compose.yml

$ docker compose up -d

Start

$ cargo run