DOMJudge

From OO Lab
Revision as of 15:10, 8 July 2014 by Rickychien (Talk | contribs)

Jump to: navigation, search

DOMJudge

DOMjudge is an automated judge system to run programming contests, like the ACM ICPC. It has a focus on usability and security, has been used in many live contests and is free, open source software. http://www.domjudge.org/

Official Documentation

Official documentation refer to: http://www.domjudge.org/documentation.

Detail Documentation

140.115.53.59 下載 vSphere Client

DOMJudge預設安裝目錄 /opt/domjudge/

安裝DomJudge

  1. 先在/etc/apt/sources.list加入資源包網站
    deb http://ftp.uni-sofia.bg/debian/ stable main contrib
  2. 更新apt-get source
    sudo apt-get update
    sudo apt-get upgrade 
    sudo apt-get dist-upgrade
  3. 下載安裝必須套件
    apt-get install gcc g++ make libcurl4-gnutls-dev mysql-server \
    apache2 php5 php5-cli libapache2-mod-php5 php5-mysql php5-json \
    php-geshi phpmyadmin \
    ntp sudo procps xsltproc \
    libboost-regex-dev libgmp3-dev linuxdoc-tools linuxdoc-tools-text \
    transfig groff texlive-latex-recommended texlive-latex-extra \
    texlive-fonts-recommended
  4. 如果要能跑java 則還要下載
    apt-get install make sudo php5-cli php5-mysql php5-json ntp xsltproc procps \
    gcc g++ gcj openjdk-6-jre-headless openjdk-6-jdk ghc fp-compiler
  5. download domjudge

    http://www.domjudge.org/docs/admin-manual-3.html(選擇domjudge-3.4.0.tar.gz 用wget)

  6. tar -xzvf [name] (解壓縮)
  7. 執行安裝 ./configure 最好不要指定 --prefix=你所希望的路徑 (ex: $HOME/...)
  8. 安裝domjudge一共需要裝 domserver, judgehost。docs為可選安裝。
    make domserver && sudo make install-domserver
    make judgehost && sudo make install-judgehost   
    make docs && make install-docs
        
  9. cd /opt/domjudge 確認套件已安裝
  10. 設定domserver (這裡skip很多 自己注意)
    1. 打開 domjudge/domserver/etc/apache.conf 做允許IP位置的修改
    2. ln -s .../domjudge/domserver/etc/apache.conf /etc/apache2/conf.d/domjudge.conf && apache2ctl graceful
  11. 設定judgehosts (這裡skip很多 自己注意)
    1. sudo useradd -d /nonexistent -g nogroup -s /bin/false domjudge-run
  12. 用ricky改版過後的 domjudge 下載後直接覆蓋 https://github.com/ncuoolab/domserver

設定好固定ip 開起網頁測試


創造domjudge jury管理員帳戶

1. htpasswd htpasswd-jury name

修改DOMJudge的登入資訊

1. sudo vim /etc/apache2/conf.d/domjudge.conf 2. sudo service apache2 restart (修改後要從新啟動)

開啟Judgehost

/opt/domjudge/judgehost/bin/judgedaemon -n [core_number] (0-3) or /opt/domjudge/judgehost/bin/judgedaemon


http://140.115.53.50/domjudge/jury (管理員網頁)


contest 控制考試時間 及 開起哪個考試活動 team 設定用戶帳戶 problem (只能上傳.zip檔) 設定題目 submit (可否上傳) judge (可否compile & execute)

Personal tools