การติดตั้ง KnowledgeVolution
ทดสอบติดตั้ง knowlegevolution ต้นฉบับจาก
http://knowledgevolution.org ติดตั้งตามคำแนะนำในเอกสาร
http://knowledgevolution.org/wiki/InstallationGuide และ
http://gotoknow.org/blog/kvinstallติดตั้ง linux fedora core 6 โดยบูทจากแผ่นซีดี
หากยังไม่มีแผ่นซีดี ให้ดาวน์โหลดแฟ้มไปเขียนซีดีเองได้จาก
ftp://ftp.psu.ac.th/pub/fedora/6หากไม่อยากเสียเวลาดาวน์โหลดทั้งหมด
ให้เลือกดาวน์โหลดแค่ 3 แผ่นแรกก็พอ
หลังติดตั้งเสร็จแล้ว สามารถติดตั้งโปรแกรมเพิ่มได้จากอินเทอร์เนต
คำแนะนำการติดตั้ง linux fedora core 6 ดูได้จากเอกสาร
http://rd.cc.psu.ac.th/component/option,com_docman/task,doc_download/gid,19/หลังติดตั้งลินุกซ์เสร็จแล้ว ต่อไปให้ใช้ login ชื่อ root เสมอ
และต้องปรับแต่งจนกว่าจะใช้งานอินเทอร์เนตได้เสียก่อน จึงค่อยทำขั้นตอนต่อไป
หากเป็น server ใน ม.สงขลาฯ ให้ซ่อมช่องโหว่ของลินุกซ์
โดยทำตามเอกสาร
http://rd.cc.psu.ac.th/content/view/52/46หากเป็น server นอก ม.สงขลาฯ สามารถซ่อมช่องโหว่ของลินุกซ์
ได้ทันทีด้วยคำสั่งว่า yum check-update
และคำสั่งว่า yum -y update
ซึ่งการซ่อมช่องโหว่จะช้าหรือเร็ว ขึ้นกับความเร็วของอินเทอร์เนต
หลังซ่อมช่องโหว่แล้ว ให้รีบูท server ใหม่อีกครั้ง
ติดตั้ง C compiler ด้วยคำสั่ง yum install gcc
ติดตั้งชุด ruby ด้วยคำสั่ง
yum install ruby irb rdoc ruby-devel ruby-mysql ruby-libs
ติดตั้งชุด Magick ด้วยคำสั่ง
yum install ImageMagick-devel GraphicsMagick-devel freetype-devel
ติดตั้ง lighttpd ด้วยคำสั่ง
yum install lighttpd lighttpd-fastcgi
ติดตั้ง mysql ด้วยคำสั่ง
yum install mysql mysql-server mysql-devel
สั่งให้ mysql-server ทำงานด้วยคำสั่ง service mysqld start
อ่านคำแนะนำเพิ่มเติมใน
http://rd.cc.psu.ac.th/content/view/21/46ติดตั้ง fcgi ดังนี้ ให้ดาวน์โหดแฟ้มจำนวน 3 แฟ้ม ด้วยคำสั่ง
wget
ftp://ftp.psu.ac.th/pub/fastcgi/fcgi-2.4.0-1.n0i.1.i686.rpmwget
ftp://ftp.psu.ac.th/pub/fastcgi/fcgi-libs-2.4.0-1.n0i.1.i686.rpmwget
ftp://ftp.psu.ac.th/pub/fastcgi/fcgi-libs-devel-2.4.0-1.n0i.1.i686.rpmแล้วติดตั้งด้วยคำสั่ง
rpm -Uvh fcgi-2.4.0-1.n0i.1.i686.rpm fcgi-libs-2.4.0-1.n0i.1.i686.rpm fcgi-libs-devel-2.4.0-1.n0i.1.i686.rpm
ติดตั้ง ruby-gems โดยดาวน์โหลดแฟ้มด้วยคำสั่ง
wget
ftp://ftp.psu.ac.th/pub/ruby/ruby-gems-0.8.11-2.noarch.rpmแล้วติดตั้งด้วยคำสั่ง
rpm -Uvh ruby-gems-0.8.11-2.noarch.rpm
ติดตั้ง rails และอื่นๆผ่าน gem ด้วยคำสั่งดังนี้
gem install rails --include-dependencies
gem install fcgi --include-dependencies
gem install gettext --include-dependencies
gem install redcloth --include-dependencies
gem install gd2 --include-dependencies
gem install color --include-dependencies
gem install rmagick --include-dependencies
*** สำหรับ server ที่ต้องผ่าน proxy เช่นใน ม.สงขลาฯ
ต้องเติม parameter เพิ่มคือ -p
http://cache.server:port ด้วย
ดังตัวอย่างประมาณว่า
gem install rails --include-dependencies -p
http://cache.psu.ac.th:8080ติดตั้ง subvesrion ด้วยคำสั่ง
yum install subversion
ต่อไปให้เข้าใปในพื้นที่เตรียม kv ดังนี้
cd /srv/www/lighttpd
แล้วสั่งติดตั้ง kv ด้วยคำสั่ง
svn checkout svn://svn.usablelabs.com/kms/kv/trunk kv
ต่อไปสร้าง database เข้าไปด้วยคำสั่ง
mysql -u root -p
ได้ prompt เป็น mysql แล้วป้อนข้อมูลว่า
mysql> create database kv_production;
mysql> grant all privileges on kv_production.* to 'kv'@'localhost' identified by '1234567';
mysql> quit
แก้ไขแฟ้ม /srv/www/lighttpd/kv/config/database.yml
ให้ยกเลิก section ของ dababase อื่นๆทั้งหมด
เช่น developement และ test เหลือแต่ procution
และปรับแต่งให้ section ของ production เป็นดังนี้
production:
adapter: mysql
database: kv_production
username: kv
password: 1234567
host: localhost
encoding: utf8
เสร็จแล้วสั่งทำงานต่อดังนี้
cd /srv/www/lighttpd/kv
export RAILS_ENV=production
rake migrate
ต่อไปแก้ไขแฟ้ม /srv/www/lighttpd/kv/public/dispatch.fcgi
ที่บรรทัดแรกเดิมว่า #!/usr/local/bin/ruby18
เปลี่ยนให้เป็น #!/usr/bin/ruby
แก้ไขแฟ้ม /srv/www/lighttpd/kv/config/lighttpd.conf
ให้บรรทัดข้อมูลจาก development เป็น production
ดังตัวอย่างเปลี่ยนจากเดิม
"bin-environment" => ( "RAILS_ENV" => "developement" )
ให้กลายเป็น
"bin-environment" => ( "RAILS_ENV" => "production" )
เปลี่ยนแค่บรรทัดเดียวพอ
ทดสอบสั่งให้ ruby script ทำงานด้วยคำสั่ง
cd /srv/www/lighttpd/kv
ruby script/server
ถึงตอนนี้ก็เริ่มต้นซ้อมใช้งานได้แล้ว
ทดสอบผลงานโดยทำงานบน server ตัวนี้
ใช้ browser เปิดเวบ
http://localhost:3000จะต้องได้หน้าโฮมเพจ KnowledgeVolution
การเลิกจาก kv ให้กดแป้น Ctrl_C
ตอนทำงานจริงๆ ต้องใช้เวบ port 80
ให้แก้ไขแฟ้ม /srv/www/lighttpd/kv/config/lighttpd.conf
ที่บรรทัดต้นๆ ค่าเดิม server.port = 3000
ให้แก้ไขตัวเลขจาก 3000 เป็น 80 ดังตัวอย่างคือ
server.port = 80
แก้ไขเสร็จแล้ว ให้ลองใช้งาน kv
ที่ server โดยป้อนคำสั่งดังนี้
cd /srv/www/lighttpd/kv
ruby script/server
ต่อไปก็ใช้ pc ตัวอื่น เปิด browser ขึ้นมาท่องเวบ kv ของเราได้เลย
สั่ง kv ทำงานทุกครั้งที่บูทเครื่อง
ต้องสร้างแฟ้มสั่งทำงานขึ้นมาก่อนชื่อ /root/mysite.sh มีข้อความว่า
#!/bin/sh
cd /srv/www/lighttpd/kv
ruby script/server
แฟ้มนี้มีข้อความแค่นี้เอง
ต่อไปให้แก้ไขแฟ้มชื่อ /etc/rc.local
เพิ่มบรรทัดข้อความว่า sh /root/mysite.sh&
ต่อไว้เป็นบรรทัดท้ายสุดเลยก็ได้ แค่นี้ก็เสร็จแล้ว
กรณีต้องการปรับปรุง kv เวอร์ชั่นใหม่ ใช้คำสั่ง
cd /srv/www/lighttpd
svn checkout svn://svn.usablelabs.com/kms/kv/trunk kv
cd /srv/www/lighttpd/kv
export RAILS_ENV=production
rake migrate
หากไม่พบ error ใดๆก็ให้สั่งทำงานใหม่ด้วยคำสั่ง
cd /srv/www/lighttpd/kv
ruby script/server
แค่นี้ก็จะได้ kv เวอร์ชั่นใหม่ใช้แล้ว