วันอาทิตย์ที่ 10 พฤศจิกายน พ.ศ. 2562

การติดตั้ง DSpace CRIS 5 ใน Ubuntu 18.04

การเตรีมเครื่องติดตั้ง DSpace CRIS 5 เราจะทำตามขั้นตอนตามเว็บ โดยปัญหาที่เจอคือ OpenJDK เป็น Version 11 จะไม่สามารถใช้ Maven สั่ง Package ได้ให้เราทำการ ลง OpenJDK เป็น Version 8 ก่อนแล้วทำการติดตั้ง Maven ที่หลัง เพราะหากทำการติดตั้ง Maven ก่อนจะเป็นการเลือกเอา OpenJDK Version ล่าสุดมา
แล้วทำไมต้องใช้ OpenJDK Version 8 ? คือว่า Maven ตอนที่เราสั่ง Package มันจะต้องใช้ไฟล์ tools.jar ในของ Java ที่อยู่ใน Folder /lib/ ใน Java ซึ่งใน OpenJDK Version 9 ขึ้นไปจะไม่มีแล้ว อันนี้เราไม่รู้นะว่าทำไม ?
sudo apt install openjdk-8-jdk
sudo apt install ant git maven 

เสร็จแล้วก็ทำการลง Tomcat8 และ PostgreSQL แล้วทำการตั้งค่าตาม Manual แต่ Command อาจไม่ตรงตามนั้นแต่ก็ได้เหมือนกัน
sudo apt install tomcat8 postgresql postgresql-contrib

เมื่อเตรีมเครื่องพร้อมแล้วก็ทำตามขั้นตอนได้
การติดตั้ง PostgreSQL อ่านที่นี้, การติดตั้ง DSpace CRIS



ขั้นตอนเราสรุปประมาณนี้

เตรียม User "dspace", "tomcat8" โดย User "dspace" เราจะสร้างใหม่และให้สิทธิ์ "sudo" ไว้
ส่วน User "tomcat8" เราจะให้อยู่ในกลุ่มเดียวกับ "dspace" เพื่อว่าเวลาอ่านไฟล์จะได้ไม่มีปัญหา
โดยการสร้าง Folder หรือทำงานต่างๆ จะใช้ User "dspace" เป็นหลัก
sudo adduser dspace
sudo usermod -aG sudo dspace

sudo usermod -aG dspace tomcat8

เตรียม Database ให้เราใช้ User "postgres" สร้าง Database User "dspace" และ Database Name "dspace"
# Create Database User
sudo su - postgres

# createuser --interactive --pwprompt

# -d, --createdb | role can create new databases
# -A, ? Unknow / หาข้อมูลไม่เจอ 
# -P, --pwprompt | assign a password to new role
createuser -d -A -P dspace
exit

# Create Database 
# createdb -O username databasename
# createdb -O dspace dspace

sudo su - dspace
# -E, --encoding=ENCODING | encoding for the database
createdb -E UNICODE dspace
exit

# Install Extension
sudo su - postgres

# psql -c "CREATE EXTENSION pgcrypto;"
psql dspace -c "CREATE EXTENSION pgcrypto;"
exit

คำสั่งที่ใช้ตรวจสอบ
# Show User
psql -c "\du";

# Show Extension (For User) 
psql -c "\dx";

# Show Database
psql -c "\l";

ทำการ Config ตัว Startup โดยเพิ่มค่า Memory และ Config ที่ DSpace CRIS แนะนำมา
เตรียม Tomcat 8 Server ทำการ "systemctl stop tomcat8" ก่อน เมื่อเพิ่ม Config เสร็จแล้วก็ทำการสั่ง "systemctl start tomcat8"
JAVA_OPTS="$JAVA_OPTS $JSEE_OPTS"

# เพิ่ม 2 บรรทัดด้านล่างนี้
JAVA_OPTS="$JAVA_OPTS -Dorg.apache.el.parser.SKIP_IDENTIFIER_CHECK=true"
JAVA_OPTS="$JAVA_OPTS -Xms2048M -Xmx2048M -XX:PermSize=1024M -XX:MaxPermSize=1024M"
เราจะสร้าง Folder ไว้สำหรับลง DSpace โดยสร้าง "/data/crisinstallation" และ "/data/dspace" ไว้
เสร็จแล้วทำการ Clone Project มาจาก Github ไว้ใน "/data/crisinstallation/dspace-parent"
cd /

mkdir data
chown dspace:dspace data

su - dspace
cd /data

sudo mkdir crisinstallation
# sudo chown dspace:dspace crisinstallation
# sudo chmod 775 crisinstallation

sudo mkdir dspace
#sudo chown dspace:dspace dspace
# sudo chmod 775 dspace

cd /data/crisinstallation
git clone https://github.com/4Science/DSpace.git --branch dspace-5_x_x-cris dspace-parent/

เมื่อทำการ Clone Project แล้วให้ทำการแก้ไข Config แล้ว Build Project โดยเข้าไปข้างใน "/data/crisinstallation/dspace-parent/"
cd /data/crisinstallation
cp build.properties build.properties.bak
nano build.properties

##### Example #####
# Path ที่จะให้ลง DSpace 
dspace.install.dir = /data/dspace

# แก้ Username และ Password เข้า Database / แก้ชื่อ Database
db.name = postgres
db.driver = org.postgresql.Driver
db.url = jdbc:postgresql://localhost:5432/dspace
db.username = dspace
db.password = dspace

cd /data/cirsinstallation/dspace-parent
mvn package
# รอพักใหญ่

สั่ง Fresh Install เราจะได้ไฟล์อยู่ใน "/data/dspace" แล้วทำการ Load Config เข้า Database
cd /data/crisinstallation/dspace-parent/dspace/target/dspace-installer
ant fresh_install
# รอสักพัก

cd /

# Check Database Info
/data/dspace/bin/dspace database info

# To load the configuration run the following command two times
# /data/dspace/bin/dspace load-cris-configuration -f [dspace]/etc/configuration-tool-demo.xls
/data/dspace/bin/dspace load-cris-configuration -f /data/dspace/etc/configuration-tool-demo.xls

# Check Database Info
/data/dspace/bin/dspace database info

# Create CRIS Administrator
# /data/dspace/bin/dspace create-administrator
/data/dspace/bin/dspace create-administrator


สุดท้ายให้ทำการ Copy Folder "jspui", "solr", "oai", "rest" ไปไว้ใน "/var/lib/tomcat8/webapps/"
cp -r /data/dspace/webapps/solr /var/lib/tomcat8/webapps/solr
cp -r /data/dspace/webapps/oai /var/lib/tomcat8/webapps/oai

cp -r /data/dspace/webapps/jspui /var/lib/tomcat8/webapps/jspui
cp -r /data/dspace/webapps/rest /var/lib/tomcat8/webapps/rest

ไม่มีความคิดเห็น:

แสดงความคิดเห็น