Skip to content

Tapeline/Dockingjudge

Repository files navigation

Dockingjudge

⚠ WIP, MVP



Demo

View full demo

View full demo

Deployment

(you may want to replace the domain name in files with you own)

docker build -t dockingjudge-unit JudgeUnit
docker compose up -d rabbitmq    # for some reason rabbitmq sometimes does not start properly. I am investigating this issue
docker compose up -d --build

also replace example sensitive information in .env (like SECRET_KEY).

You can consult docs for more info.

Dev env

If you want to deploy locally, without a domain, then you need to deploy frontend separately:

  1. $ cd Frontend
    $ npm install --legacy-peer-deps
    $ npm run dev -- --host --port 3000
  2. # api_gateway_nginx.conf
    
    # proxy_pass http://frontend.service:3000;
    proxy_pass http://host.docker.internal:3000;

Structure

Dockingjudge consists of several services:

(formalised arch definition located in dockingjudge.aisle)

Planned

  • Upload images to ghcr
  • Build and deploy only on tags
  • More security on judgelet
  • Bug fixes
  • Public/private contests
  • Migrate from RMQ to NATS/Kafka
  • Make frontend locally deployable in container
  • Add more compilers (at least cpp)
  • Add tests
  • Lint and test in CI
  • Move config to config files

About

WIP programming contest management system

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published