ติดตั้ง Alfresco Community Edition บน Linux

ไม่ได้ตาม Alfresco มานานมากเนื่องจากใช้ Alfresco Enterprise บน Cloud ไม่ได้มาติดตั้งเองมานานมากแล้ว พอได้ไปเรียนเป็นเด็กหลังห้องวิชา Alfresco ในโครงการ OSS Fastrack Programme ทำให้อยากเล่นเวอร์ชั่นใหม่บ้าง สำหรับ Alfresco รุ่นใหม่ใช้ตัวติดตั้งของ BitRock เช่นเคยซึ่งอำนวยความสะดวกมากในเรื่องการติดตั้งทั้งในส่วน GUI และในส่วนที่เป็น command Line สำหรับในครั้งนี้เราจะมาติดตั้งบน Linux Server ผ่าน command line กันครับ ขั้นตอนแรกให้ดาวน์โหลด Alfresco มาก่อน โดยใช้คำสั่ง
wget -c http://dl.alfresco.com/release/community/build-00007/alfresco-community-4.0.e-installer-linux-x64.bin
เปลี่ยน permission และสั่งติดตั้งดังนี้
chmod +x alfresco-community-4.0.e-installer-linux-x64.bin
./alfresco-community-4.0.e-installer-linux-x64.bin
ตอบคำถามต่างๆ ดังนี้
* เลือกภาษาที่ต้องการติดตั้ง
* เลือกไดเรคทอรีที่ต้องการติดตั้ง
* กำหนดรหัสผ่านให้ผู้ดูแลระบบ
* กำหนด Alfresco Service
เมื่อติดตั้งเสร็จให้ Start Service ดังนี้
/etc/init.d/alfresco start
เข้าใช้งาน Alfresco ผ่านทางเบราเซอร์ดังนี้?http://localhost:8080/share?สำหรับเอกสารการใช้งานและวิดีโอการใช้งานสามารถดูได้ที่?http://docs.alfresco.com/4.0/index.jsp?ขอให้มีความสุขกับ Alfresco ครับ

ติด Alfresco Community 3.3 บน Ubuntu Server 10.04

Alfresco เป็นระบบจัดการเอกสารระดับ Enterprise ที่ได้รับความนิยมอย่างแพร่หลายด้วยความสามารถในการจัดการเอกสารที่เรียกได้ ว่าครบวงวรตั้งแต่การจัดการเอกสารพื้นฐาน รวมไปถึงระบบ workflow ที่กำหนดเส้นทางของเอกสาร การยืนยันเอกสาร นอกจากนี้ยังสามารถประยุกต์ใช้ในงานด้าน collaboration, record management, knowledge management, web content management หรือแม้กระทั่ง image management เรียกได้ว่า Alfresco อยู่ในระดับต้นๆ ของโปรแกรมจัดการงานเอกสารที่เป็นโอเพนซอร์สกันเลยทีเดียว
สำหรับการติดตั้ง Alfresco Community ในครั้งนี้ให้คุณติดตั้ง Ubuntu Server ให้เรียบร้อยพร้อมทั้งเรียกใช้ partner repository ใน /etc/apt/sources.list เพื่อใช้ติดตั้งแพคเกจ sun-java6-jdk ได้ ผมใช้ dms.example.com เป็น hostname มี IP Address เป็น 192.168.1.1/255.255.255.0 เปลี่ยนค่าข้างต้นตามค่าของคุณนะครับ เอาล่ะมาเริ่มติดตั้ง Alfresco กันเลย
แปลงร่างเป็น root กันก่อน

sudo -s

ติดตั้งโปรแกรมที่ต้องใช้

apt-get install mysql-server sun-java6-jdk imagemagick swftools openoffice.org-core openoffice.org-java-common openoffice.org-writer openoffice.org-impress openoffice.org-calc

คอนฟิดค่า JAVA_HOME ใน environment variable ที่ /etc/environment ดังนี้

JAVA_HOME="/usr/lib/jvm/java-6-sun/"

เรียกใช้ environment variable โดยไม่ต้อง logout แล้ว login ใหม่โดยใช้คำสั่ง

/etc/environment

กำหนดค่า default character set เป็น UTF-8 เพื่อใช้ภาษาที่ซับซ้อน ป้องกันการแสดงผลภาษาอื่นๆ ที่ไม่ใช้ภาษาอังกฤษเป็นตัวอักษร ????? แก้ไขไฟล์ /etc/myql/my.cnf แก้ไขตรง [mysqld] ดังตัวอย่างข้างล่าง

[mysqld]
#
# * Basic Settings
#
#
# * IMPORTANT
# If you make changes to these settings and your system uses apparmor, you may
# also need to also adjust /etc/apparmor.d/usr.sbin.mysqld.
#
default-character-set = utf8

จากนั้น restart MySQL โดยใช้คำสั่ง

/etc/init.d/mysql restart

จากนั้นตั้งค่าฐานข้อมูล MySQL ให้กับ Alfresco

mysql -u root -p

สร้างผู้ใช้ สร้างฐานข้อมูล alfresco และกำหนดสิทธิ์เข้าถึง ดังนี้

CREATE DATABASE alfresco DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci;
GRANT ALL PRIVILEGES ON alfresco.* TO alfresco@localhost IDENTIFIED BY 'alfresco';
GRANT SELECT,LOCK TABLES ON alfresco.* TO alfresco@localhost IDENTIFIED BY 'alfresco';
FLUSH PRIVILEGES;
quit;

เมื่อได้ฐานข้อมูลแล้วสร้างที่เก็บ alfresco กันครับ

mkdir -p /opt/alfresco

จากนั้นดาวน์โหลดและคลี่ไฟล์ลงในไดเรคทอรีที่สร้างขึ้น

cd /opt/alfresco
wget http://dl.alfresco.com/release/community/build-2765/alfresco-community-t... -O alfresco-community-tomcat-3.3.tar.gz
tar zxvf alfresco-community-tomcat-3.3.tar.gz
rm -f alfresco-community-tomcat-3.3.tar.gz

มาคอนฟิก Alfresco กันต่อ เปิดไฟล์ alfresco-global.properties มาแก้ไขด้วยคำสั่ง

nano /opt/alfresco/tomcat/shared/classes/alfresco-global.properties

มาดูส่วนตั้งค่าพื้นฐานกันก่อน เปลี่ยนค่าจาก

###############################
## Common Alfresco Properties #
###############################
#
# Sample custom content and index data location
#-------------
dir.root=./alf_data
#
# Sample database connection properties
#-------------
db.name=alfresco
db.username=alfresco
db.password=alfresco
db.host=localhost
db.port=3306
#
# External locations
#-------------
#ooo.exe=soffice
#ooo.enabled=false
#img.root=./ImageMagick
#swf.exe=./bin/pdf2swf

เป็นค่าดังนี้

###############################
## Common Alfresco Properties #
###############################
#
# Sample custom content and index data location
#-------------
root.dir=/opt/alfresco/alf_data
#
# Sample database connection properties
#-------------
db.name=alfresco
db.username=alfresco
db.password=alfresco
db.host=localhost
db.port=3306
#
# External locations
#-------------
ooo.exe=/usr/lib/openoffice/program/soffice
ooo.enabled=true
img.root=/usr
swf.exe=/usr/bin/pdf2swf

ถ้าต้องการใช้ Alfresco ผ่านทาง Windows Share ให้ตั้งค่า CIFS โดยเพิ่มค่า config ดังนี้

#
# CIFS Support
#------------------------
cifs.enabled=true
cifs.serverName=dms
cifs.ipv6.enabled=false
cifs.tcpipSMB.port=1445
cifs.netBIOSSMB.namePort=1137
cifs.netBIOSSMB.datagramPort=1138
cifs.netBIOSSMB.sessionPort=1139

เริ่ม Alfresco และเรียกใช้ OpenOffice.org แบบ services

/usr/lib/openoffice/program/soffice "-accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager" -nologo -headless -nofirststartwizard &

จากนั้น อัพเดท firewall เพื่อ forward port ไปยัง Alfresco CIFS (กรณีที่ไม่ใช้ CIFS ไม่ต้องตั้งค่าก็ได้ครับ)

iptables -t nat -A PREROUTING -p tcp -m tcp --dport 445 -j REDIRECT --to-ports 1445
iptables -t nat -A PREROUTING -p tcp -m tcp --dport 139 -j REDIRECT --to-ports 1139
iptables -t nat -A PREROUTING -p udp -m udp --dport 137 -j REDIRECT --to-ports 1137
iptables -t nat -A PREROUTING -p udp -m udp --dport 138 -j REDIRECT --to-ports 1138

จากนั้น start Alfresco ดังนี้

cd /opt/alfresco
./alfresco.sh start

เข้าใช้งาน Alfresco DMS ผ่านทาง browser ที่ http://192.168.1.1:8080/alfresco
เข้าใช้งาน Alfresco Share ผ่านทาง browser ที่ http://192.168.1.1:8080/share
ล็อกอินด้วยชื่อผู้ใช้ admin และรหัสผ่าน admin
สำหรับการเรียกใช้งานผ่าน CIFS Share บน Windows เรียกใช้ดังนี้ \\dms\alfresco
ที่มา – How To Install Alfresco Community 3.3 On Ubuntu Server 10.04 (Lucid Lynx)
?

Alfresco ECM ในมุมที่คุณมองข้าม

ผมเคยพัฒนาซอฟต์แวร์ประเภท Groupware และ Collaboration System มาระยะหนึ่งได้เห็นจุดเด่นและจุดด้อยของซอฟต์แวร์ประเภทนี้ ทั้งในเรื่องที่ผู้ใช้ต้องการเช่น Work Flow, Privillege System และที่สำคัญคือ Document Management ตัวนี้ถือเป็นจุดขาดของซอฟตืแวร์ประเภทนี้เลยก้อว่าได้ แต่ปัญหามันไม่ได้เกิดแค่ Document Management ปัญหาที่ทุกคนมองข้ามคือ คุณมี Collaboration System หรือ DCM อยู่ในองค์กรคุณใส่ข้อมูลเข้าไปในระบบได้ด้วยวิธีไหน? อัพโหลดผ่านเว็บหรือ? ถ้าคุณมีไฟล์สัก 50 ไฟล์คุณก้อคงคลิกจนมือหงิกเลยก้อได้
ผมก้อเจอ ปัญหานี้กับซอฟต์แวร์ของผมเช่นเดียวกัน แต่ก้อไม่ได้หาทางแก้ไขอะไร เพราะด้วยความคิดที่ว่ายังไงๆ เขาก้อต้องใช้ในองค์กรอยู่แล้ว แต่เราลืมไปว่ามันขึ้นอยู่กับว่าเขาจะไป deploy ใช้กันยังไง ซึ่งส่วนใหญ่คนที่เอาซอฟต์แวร์ของผมไปใช้ก้อมันจะเช่าพื้นที่กับผู้ให้ บริการโฮสติ้งแล้วก้อเอาซอฟต์แวร์ผมไปติดตั้งใช้งานกันทั้งออฟฟิตนั่น หมายความว่าพวกเขากำลังโยนเอกสารผ่าน Internet ไม่ใช่ผ่านบนเว็บเซิร์ฟเวอร์ใน Local Network นี่แหละจึงเกิดปัญหากับคนที่ใช้งานระบบพวกนี้อย่างจริงๆ จังๆ
ผมเอง เป็นพวกบ้าพลังเรื่อง Office Automation, Paperless, Virtual Office เป็นเรื่องที่ผมให้ความสนใจมาก เพราะมันเจ๋ง ผมคิดว่าทุกวันนี้ไม่จำเป็นต้องมาทำงานที่ office ก้อได้อยู่ที่ไหนก้อได้ ต่อ net ผ่าน GPRS/Edge หรือ Wifi ที่ร้านกาแฟ คุณก้อสามารถสื่อสารและทำงานกับเพื่อนร่วมงานผ่านระบบ Collaboration System ได้ วกกลับเรื่องคุณใส่ข้อมูลเข้าไปในระบบได้ด้วยวิธีไหน? จากปัญหาข้างต้นซอฟต์แวร์ประเภท Collaboration System และ Document Management System มักจะถูกพัฒนาเป็น Web Application ซึ่งทำให้วิธีการนำข้อมูลเข้าไปยังระบบถูกแช่แข็งไว้ที่ HTTP เป็นหลัก และนั่นแหละที่เกิดปัญหา Internet คุณเร็วแค่ไหน? หรือ เซอร์ฟเวอร์ที่คุณใช้ busy มากมั๊ย ให้บริการกับผู้ใช้ทั้งองค์กรได้หรือไม่? นั่นคือปัญหาที่ตามมาจาก คุณเอาข้อมูลเข้าไปยังระบบยังไง และความเร็วในการเอาข้อมูลเข้า เอาข้อมูลออกมากน้อยแค่ไหน?
ที่ทำงานผมคลั่ง Alfresco ECM กันมาก เรียกได้ว่าอะไรๆ ก้อ Alfresco ผมยังจำได้ตอนที่ผมพัฒนาระบบ Collaboration System ในช่วง 7 ปีที่แล้วใครๆ ก้อคลั่ง OSP ก้อคงจะอารมณ์เดียวกัน ซึ่งผมเองก้อคงไม่เอา OSP ไปเทียบกับ Alfresco ECM หรอกนะครับ แต่ที่น่าเป็นห่วงคือ พฤติกรรมการใช้งานไม่ว่าจะผ่านไปถึง 7 ปี พฤติกรรมการใช้งาน Collaboration System หรือ Enterprise Content Management ก้อเหมือนเดิมคือเอาข้อมูลขึ้นผ่าน HTTP อยู่เช่นเดิม แล้วความเร็วในการเอาข้อมูลเข้าเอาข้อมูลออก มีความเร็วมากน้อยแค่ไหน? ก้อคงขึ้นอยู่กับความเร็วอินเตอร์เน็ตขององค์กรนั่นเอง นั่นหมายความว่าในช่วง 7 ปีที่ผ่านมา พฤติกรรมของผู้ใช้ไม่ได้มีอะไรเปลี่ยนแปลงเลย น่าสนใจมากครับ
แต่ว่า Alfresco ECM ไม่ได้เปิดช่องทางในการนำเข้าข้อมูลเพียงแค่ผ่านหน้าเว็บเท่านั้น (คุณรู้บ้างมั๊ย) คุณยังสามารถนำเอาข้อมูลเข้าทางระบบเน็ตเวิร์คอย่าง CIFS หรือ SMB ได้เช่นกัน ลองนึกถึงตอนที่เราแชร์ไฟล์บน Windows หรือพิมพ์ smb://myserver/my-user-account/myfolder เป็นต้น นั่นหมายความว่าคุณสามารถใช้โปรแกรมง่ายๆ อย่าง Exploror, File Manager, Nautilus, Dolphin โยนไฟล์ผ่าน CIFS หรือ SMB เข้าไปยัง Alfresco ได้โดยตรงโดยไม่ต้องผ่านหน้าเว็บแต่อย่างใด ทีนี้คุณจะเอาไฟล์เข้าไปสักที่ไฟล์ก้อได้ หรือเอาไฟล์ออกจากระบบสักกี่ไฟล์ก้อได้ ในเวลาที่เร็วกว่า 🙂 สำหรับออฟฟิตที่มีเครื่องถ่ายเอกสารตัวใหญ่ๆ ที่สามารถ Scan/FAX/Copy ผ่าน Network ได้ และรองรับ protocal CIFS หรือ SMB คุณก้อสามารถถ่ายเอกสารแล้วนำข้อมูลเข้าไปยัง Alfresco ECM ได้โดยตรง เจ๋งมั๊ย 🙂
เรื่อง Work Flow, Collaborative Working, Document Repository, Document Management มันก้อเป็นเรื่องปกติที่ ECM ส่วนใหญ่มีกัน แต่ที่สำคัญวันนี้คุณใช้ Alfresco ECM ของคุณเป็นแล้วหรือยัง?