DOMJudge

From OO Lab
(Difference between revisions)
Jump to: navigation, search
(Created page with "= 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 contes...")
 
Line 9: Line 9:
  
 
== Detail Documentation ==
 
== Detail Documentation ==
 +
 +
140.115.53.59 下載 vSphere Client
 +
 +
DOMJudge預設安裝目錄 /opt/domjudge/
 +
 +
安裝DomJudge
 +
 +
<ol>
 +
  <li>先在/etc/apt/sources.list加入資源包網站
 +
    <pre>deb http://ftp.uni-sofia.bg/debian/ stable main contrib</pre>
 +
  </li>
 +
  <li>更新apt-get source
 +
    <pre>
 +
sudo apt-get update
 +
sudo apt-get upgrade
 +
sudo apt-get dist-upgrade</pre>
 +
  </li>
 +
  <li>下載安裝必須套件
 +
    <pre>
 +
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</pre>
 +
  </li>
 +
  <li>如果要能跑java 則還要下載
 +
    <pre>
 +
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</pre>
 +
  </li>
 +
  <li>download domjudge
 +
    <p>http://www.domjudge.org/docs/admin-manual-3.html(選擇domjudge-3.4.0.tar.gz 用wget)</p>
 +
  </li>
 +
  <li>tar -xzvf [name]  (解壓縮)</li>
 +
  <li>執行安裝 ./configure    最好不要指定  --prefix=你所希望的路徑 (ex: $HOME/...)</li>
 +
  <li>安裝domjudge一共需要裝 domserver, judgehost。docs為可選安裝。
 +
    <pre>
 +
make domserver && sudo make install-domserver
 +
make judgehost && sudo make install-judgehost 
 +
make docs && make install-docs
 +
    </pre>
 +
  </li>
 +
  <li>cd /opt/domjudge 確認套件已安裝</li>
 +
  <li>
 +
    設定domserver (這裡skip很多 自己注意)
 +
    <ol>
 +
      <li>打開 domjudge/domserver/etc/apache.conf 做允許IP位置的修改</li>
 +
      <li>ln -s .../domjudge/domserver/etc/apache.conf /etc/apache2/conf.d/domjudge.conf && apache2ctl graceful</li>
 +
    </ol>
 +
  </li>
 +
  <li>
 +
    設定judgehosts (這裡skip很多 自己注意)
 +
    <ol>
 +
      <li>sudo useradd -d /nonexistent -g nogroup -s /bin/false domjudge-run</li>
 +
    </ol>
 +
  </li>
 +
  <li>用ricky改版過後的 domjudge 下載後直接覆蓋 https://github.com/ncuoolab/domserver</li>
 +
</ol>
 +
----------------------------------------------------------------------
 +
 +
設定好固定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)

Revision as of 15:10, 8 July 2014

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