Elab installation

จาก Theory Wiki
ไปยังการนำทาง ไปยังการค้นหา

Elab is a web-based grading system for programming tasks written in Python using Django. It is distributed under the BSD license.

e-lab repo: http://cloud3.cpe.ku.ac.th/hg/edu/elabsheet/

ขั้นตอนคร่าว ๆ

  • ติดตั้ง hg และซอฟต์แวร์อื่น ๆ
sudo apt-get install mercurial python-setuptools build-essential git-core mysql-server mysql-client python-mysqldb
  • สร้างผู้ใช้ elab และ elabdummy (สำหรับสั่งรันโปรแกรม)
sudo adduser elab
sudo adduser elabdummy
  • ปรับให้ elab อยู่ใน sudoers ชั่วคราว
เข้าไปเพิ่มบรรทัด ในไฟล์ /etc/sudoers
elab	ALL=(ALL:ALL) ALL
  • clone repo

เข้าใช้เป็นผู้ใช้ elab

mkdir prog
cd prog
hg clone http://cloud3.cpe.ku.ac.th/hg/edu/elabsheet/

  • ใช้สคริปต์พื้นฐานคอมไฟล์ box และสร้าง directory พื้นฐาน
cd ~/prog/elabsheet
sudo sh install.sh

python libs

ติดตั้ง python library ที่ต้องการ

  • ติดตั้ง django
cd ~
mkdir lib
cd lib
git clone https://github.com/django/django.git
cd django
git branch elabsheet
git checkout elabsheet
git reset a97648a7e03fb --hard

ย้ายตัวเองไปที่ package directory เช่น /usr/lib/python2.7/dist-package

sudo ln -s /home/elab/lib/django/django .
  • south และ library อื่น ๆ
sudo easy_install South==0.7.3
sudo easy_install Pygments==0.9
sudo easy_install Markdown==2.0.3
sudo easy_install pexpect

database

  • ลง mysql-server mysql-client phpmyadmin
    • สร้าง database, ตั้ง default encoding

เว็บ

sudo apt-get install python-pip
sudo pip install flup
sudo apt-get install libapache2-mod-fastcgi