Skip to content

Basic Installation

Eason0729 edited this page Feb 1, 2024 · 2 revisions

System requirement

Support of namespaces: UTS, MOUNT, PID, IPC, NET, USER, CGROUPS

cgroupv2

linux kernel 5.14 or later

Privileged Docker

steps

git clone https://github.com/mdcpp/mdoj.git
git checkout tags/v0.0.1
cd mdoj/docker/production
mkdir /database
sudo docker run --rm -v ./database:/database ghcr.io/mdcpp/mdoj/judger:staging /migrate up -u sqlite://database/backend.sqlite?mode=rwc
sudo docker compose up

Standalone

steps

  • download migration, judger and backend and frontend from github release
  • Run migration
Usage: migration [OPTIONS] [COMMAND]

Commands:
  init      Initialize migration directory
  generate  Generate a new, empty migration
  fresh     Drop all tables from the database, then reapply all migrations
  refresh   Rollback all applied migrations, then reapply all migrations
  reset     Rollback all applied migrations
  status    Check the status of all migrations
  up        Apply pending migrations
  down      Rollback applied migrations
  help      Print this message or the help of the given subcommand(s)

Options:
  -v, --verbose                            Show debug messages
  -s, --database-schema <DATABASE_SCHEMA>  Database schema
                                            - For MySQL and SQLite, this argument is ignored.
                                            - For PostgreSQL, this argument is optional with default value 'public'.
                                            [env: DATABASE_SCHEMA=]
  -u, --database-url <DATABASE_URL>        Database URL [env: DATABASE_URL=]
  -h, --help                               Print help (see more with '--help')
  -V, --version                            Print version
  • Run judger and backend once to generate config.
  • Run judger and backend to serve.
Clone this wiki locally