Install Dspace 8 Di Ubuntu 22, Akses Dspace IP Publik


Untuk install Dspace 8 di Ubuntu 22 anda harus siap mental dan tabah menghadapi cobaan dan godaan berbagai eror dan kuat berada terminal dalam menggunakan terminal. 😅😅

Agar mantap baca artikel ini di komputer saja dimana browser komputer karena lebih luas dan lebih puas sekalian praktek di VPS. VPS (Virtual Private Server) adalah layanan hosting dalam bentuk server virtual yang menjalankan sistem operasi dengan hak akses penuh. Anda dapat memilih RAM , CPU , Disk sesuai kebutuhan.

Butuh hosting atau email cpanel pakai Jagoan Hosting . Dijamin bagus layanan nya recomended. Hosting Indonesia Paling Kredibel Bikin Kebutuhan Onlinemu jadi Fleksibel. Tersedia berbagai paket hosting dan email bisnis yang ramah pustakawan. Klik aja link berikut JAGOANHOSTING.COM , Nikmati diskon 10% untuk VPS , gunakan kode promo ZAE10 , diskon berlaku hingga 29 September 2024.

Prasyarat untuk install DSpace 8 ini minimal RAM yang dipakai 6 GB ,  6 Core CPU , 200 GB Main Storage. Saya menggunakan VPS dari Jagoan Hosting , paket VPS Universe , detail paket dapat anda pelajari di https://www.jagoanhosting.com/vps-indonesia/ kunjungi web nya , dan daftar sebagai member , santay daftar gratis 


Login ssh 

 ssh root@103.157.97.249 code-box

Update Ubuntu 

sudo apt update && sudo apt upgrade -y code-box

Install JDK dan Konfigurasi

Untuk Dspace 8.x minimal versi Java nya versi 17 pada tutorial kita menggunakan Java versi 17 , pernah saya coba pakai Java 21 eror saat compile Dspace Backend alert-success

sudo apt install openjdk-17-jdk -y code-box

cek versi java

java -version code-box

Pada vps yang saya pakai menunjukan versi openjdk version "17.0.12" 2024-07-16

openjdk version "17.0.12" 2024-07-16 OpenJDK Runtime Environment (build 17.0.12+7-Ubuntu-1ubuntu222.04) OpenJDK 64-Bit Server VM (build 17.0.4+7-Ubuntu-1ubuntu222.04, mixed mode, sharing)code-box

Tambahkan Variabel Lingkungan Java

cd /etc code-box

sudo nano environment  code-box

Copy paste baris code di bawah ke file yang baru dibuka , copas dibaris bawah. Jangan lupa untuk mengubah versi java yang saya tandai dengan warna hijau jika berbeda dari versi JDKyang saya install. Pada JDK yang saya install menggunakan versi 17.0.12

JAVA_HOME="/usr/lib/jvm/java-17-openjdk-amd64" JAVA_OPTS="-Xmx2048M -Xms1024M -Dfile.encoding=UTF-8"code-box

simpan dan tutup. Penjelasan konfigurasi diatas

Peningkatan ukuran tumpukan (heap ) : alert-info

Xmx2048M: Ukuran tumpukan maksimum ditingkatkan menjadi 2GB.alert-info

-Xms1024M: Ukuran tumpukan awal ditingkatkan menjadi 1GB. alert-info

Ini menyediakan lebih banyak memori untuk DSpace untuk beroperasi, berpotensi meningkatkan kinerja, terutama saat menangani kumpulan data besar atau beban berat.alert-info

Perbarui lingkungan java nya , ketik perintah berikut

source /etc/environment  code-box

Kita cek versi dan lingkungan Java

echo $JAVA_HOME code-box

akan menampilkan 

/usr/lib/jvm/java-17-openjdk-amd64

echo $JAVA_OPTS code-box

-Xmx2048M -Xms1024M -Dfile.encoding=UTF-8

Peru juga hal berikutnya adalah mengekspor JAVA_HOME. Buka file di bawah ini dan tambahkan baris:

nano ~/.bashrc code-box

Akan membuka konfigurasi , tambhakan baris berikut di baris paling bawah

export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java))))
export PATH=$PATH:$JAVA_HOME/bin

Simpan perubahan dan sumber profil:

source ~/.bashrc code-box

Sekarang verifikasi cek pengaturan yang dibuat:

echo $JAVA_HOME code-box

Akan menampilkan 

/usr/lib/jvm/java-17-openjdk-amd64

echo $PATH code-box

Akan menampilkan

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-17-openjdk-amd64/bin

Instalasi ANT

sudo apt install ant -ycode-box

Periksa detail versi ant yang diinstall(versi harus 1.10.x atau lebih tinggi) dan maven untuk Dspace 8.x (versi harus 3.8.x atau lebih tinggi). alert-success

Cara mengecek versi ant ketik perintah berikut

ant -version code-box

Instalasi Maven dari Source

Jika anda menginstall maven dari apt bawaan ubuntu maka yang ada versi 3.6.x sedangkan yang dibutuhkan Dspace 8 adalah minimal maven 3.8 maka anda harus install maven dari server apache berikut cara nya alert-success

Download source code maven di directory /tmp

wget https://dlcdn.apache.org/maven/maven-3/3.9.9/binaries/apache-maven-3.9.9-bin.tar.gz -P /tmp code-box

Setelah unduhan selesai, ekstrak arsip di direktori /opt

 sudo tar xf /tmp/apache-maven-3.9.9-bin.tar.gz -C /opt code-box

Untuk memiliki kontrol lebih besar atas versi dan pembaruan Maven, kita akan membuat tautan simbolis yang akan menunjuk ke direktori instalasi Maven:maven

sudo ln -s /opt/apache-maven-3.9.9 /opt/maven code-box

Tujuan nya saat versi baru dirilis, Anda dapat mengupgrade penginstalan Maven Anda, dengan membongkar versi yang lebih baru dan mengubah symlink untuk mengarah ke versi tersebut.

Setup environment variables maven , Selanjutnya, kita perlu mengatur variabel lingkungan. Untuk melakukannya, buka editor teks Anda dan buat file baru bernama maven.sh di direktori /etc/profile.d/

sudo nano /etc/profile.d/maven.sh code-box

Copy paste kode berikut:

export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export M2_HOME=/opt/maven
export MAVEN_HOME=/opt/maven
export PATH=${M2_HOME}/bin:${PATH}

Simpan dan tutup file. Skrip ini akan bersumber pada startup shell.

Membuat skrip dapat dieksekusi , dengan perintah 

sudo chmod +x /etc/profile.d/maven.sh  code-box

Terakhir, muat variabel lingkungan menggunakan perintah 

source /etc/profile.d/maven.sh  code-box

Cara mengecek versi maven ketik perintah berikut

mvn -version code-box

Maven home: /opt/apache-maven-3.9.9
Java version: 17.0.12, vendor: Ubuntu, runtime: /usr/lib/jvm/java-17-openjdk-amd64
Default locale: en, platform encoding: UTF-8
OS name: "linux", version: "5.15.0-119-generic", arch: "amd64", family: "unix"

Install Depensi Maven yang Dibutuhkan Dspace

apt install libaopalliance-java libapache-pom-java libatinject-jsr330-api-java libcdi-api-java libcommons-cli-java libcommons-io-java libcommons-lang3-java libcommons-parent-java libgeronimo-annotation-1.3-spec-java libgeronimo-interceptor-3.0-spec-java libguava-java libguice-java libhawtjni-runtime-java libjansi-java libjansi-native-java libjsr305-java libmaven-parent-java libmaven-resolver-java libmaven-shared-utils-java libmaven3-core-java libplexus-cipher-java libplexus-classworlds-java libplexus-component-annotations-java libplexus-interpolation-java libplexus-sec-dispatcher-java libplexus-utils2-java libsisu-inject-java libsisu-plexus-java libslf4j-java libwagon-file-java libwagon-http-shaded-java libwagon-provider-api-java -y code-box

Itu saja. cukup mudah ya , Versi terbaru Maven sekarang diinstal pada sistem Ubuntu Anda. lanjut ke step berikut nya.

Untuk menginstal DSpace 8.0 , Anda memerlukan PostgreSQL versi 12.x, 13.x, 14.x, atau 15.x dengan ekstensi pgcrypto terinstal alert-info

Konfigurasi Maven Agar Dapat Dijakankan Selain Root

Jalankan perintah berikut.  Ini membuat setiap file di /usr/local/apache-maven-3.9.9/  dapat ditulis (yaitu semua user dapat menulisnya) dan dapat dieksekusi. 

sudo chmod -R 755 /opt/apache-maven-3.9.9code-box

Kemudian saya membuka ~/.bash_aliases dengan:

sudo nano ~/.bash_aliases code-box

Dan  tambahkan code:

alias mvn='/opt/apache-maven-3.9.9/bin/mvn' code-box

Jalankan perintah source agar sistem memperbarui konfigurasi

source ~/.bash_aliases code-box

Install PostgreSQL

Mari kita install PostgreSQL , saya menggunakan repository apt bawaan Ubuntu

sudo apt-get install postgresql postgresql-client postgresql-contrib libpostgresql-jdbc-java -ycode-box

Identifikasi versi Postgresql telah  diinstal (dalam tutorial saya install adalah versi psql 14.13) ketik perintah berikut

sudo -u postgres psqlcode-box

psql (14.13 (Ubuntu 14.13-0ubuntu0.22.04.1))
Type "help" for help.

Keluar dari konsol PostgreSQL

\qcode-box

Untuk mengetahui versi PostgreSQL 
psql --version code-box

akan muncul informasi PostgreSQL yang diinstall , misal pada server saya 

psql (PostgreSQL) 14.13 (Ubuntu 14.13-0ubuntu0.22.04.1)

Mulai jalankan PostgreSQL (Jangan lupa untuk mengubah versi postgreSQL sesuai instalasi Anda , lihat langksh sebelum nya)

sudo pg_ctlcluster 14 main startcode-box

Anda dapat mengecek status  PostgreSQL , ketik perintah berikut

sudo systemctl status postgresqlcode-box

Atur paswod ke user PostgreSQL , ketik perintah berikut , dan nanti nya akan dimintai prompt untuk mengetik paswod nya

sudo passwd postgres code-box

Beralih ke Pengguna postgres di linux anda 

su postgres code-box

Jalankan perintah di bawah ini di pengguna postgres untuk memeriksa apakah itu mendukung UTF

psql -c "SHOW SERVER_ENCODING" code-box

Jika menampilkan UTF8 yang berarti postgres yang anda install mendukung  UTF8

 server_encoding
-----------------
 UTF8
(1 row)

Keluar dari pengguna postgres

exit code-box

Konfigurasi PostgreSQL

jalankan perintah berikut , pindah pada directory postgresql
cd /etc/postgresql/14/main code-box
Buka nano untuk mengedit nya , jalankann perintah berikut 
sudo nano postgresql.conf code-box

Perintah di atas akan membuka file konfigurasi pgsql, di mana UNCOMMENT (hapus simbol # Dari Bagian Pertama) baris listen_addresses = 'localhost' di bawah opsi pengaturan koneksi. Simpan dan keluar


Konfigurasi keamanan Postgresql
sudo nano pg_hba.conf code-box

Ini akan membuka file konfigurasi Postgres di mana Tambahkan kode berikut, simpan dan tutup
# Dspace Configuration host dspace dspace 127.0.0.1 255.255.255.255 md5code-box


Restart postgres
sudo systemctl restart postgresql code-box

Instalasi Apache Solr 

Jangan lupa untuk mengubah versi solr sesuai instalasi anda. Saat tutorial ini dibuat Apache Solr tersedia versi 8.11.3

Di beberapa versi Ubuntu tak sedia aplikasi unzip , unzip digunakan untik mengekstrak source code yang dikompres , jadi saya install dulu unzip 

apt install zip unzip -y code-box

cd /opt code-box

sudo wget https://downloads.apache.org/lucene/solr/8.11.3/solr-8.11.3.zip code-box

sudo unzip solr-8.11.3.zip code-box

rm solr-8.11.3.zip code-box

Buat pengguna bernama 'dspace' dan ubah kepemilikan folder solr menjadi dspace

sudo useradd -m dspace code-box

Set paswod user dspace
sudo passwd dspace code-box

Ubah kepemilikan folder solr menjadi dspace
sudo chown -R dspace:dspace solr-8.11.3 code-box

Start Solr Service

Beralih pengguna ke pengguna dspace di linux
su dspace code-box

cd /opt/solr-8.11.3/bin/ code-box

/opt/solr-8.11.3/bin/solr start code-box

Tunggu beberapa saat hingga Solr sudah start
Setelah eksekusi selesai  buka browser, akses url solr – Ini akan menampilkan halaman solr
http://ip-publik-anda:8983


Buat crontab untuk Solr dimulai secara otomatis pada system operasi linux nya di reboot
crontab -e -u dspace  code-box

Nanti nya akan ada pilihan 
Select an editor.  To change later, run 'select-editor'.
  1. /bin/nano        <---- easiest
  2. /usr/bin/vim.basic
  3. /usr/bin/vim.tiny
  4. /bin/ed
Pilih 1 , untuk memilih editor Nano. Tambahkan baris di bawah ini di bagian bawah code cronjob saat dibuka

@reboot /opt/solr-8.11.3/bin/solr start code-box

Simpan dan keluar , untuk keluar dari user dspace ketik

exitcode-box

 kemudian enter

Instalasi dan konfigurasi TOMCAT 10

Untuk menjalankan Dspace 8.x membutuhkan Java 17 (atau lebih baru) dan Tomcat 10 (atau lebih baru) diperlukan untuk backend. Backend DSpace 8 tidak dapat lagi dijalankan di Java 11 atau Tomcat 9 karena telah diperbarui ke Spring 6 / Spring Boot v3 untuk mendukung Jakarta Enterprise Edition 9+.alert-success

Saat tutorial ini dibuat Tomcat 10 belum tersedia di APT Ubuntu , sehingga harus install Tomcat 10 dari source code. Dan saat tutorial ini dibuat Tomcat mempublis versi 10.1.28 , dapat anda baca di https://tomcat.apache.org/download-10.cgi


Pertama, buat pengguna baru di linux , yaitu tomcat. Buat dengan perintah di bawah ini.

sudo useradd -m -d /opt/tomcat -U -s /bin/false tomcat code-box

Kunjungi halaman unduhan Apache Tomcat dan periksa versi terbaru Tomcat. Kemudian jalankan perintah di bawah ini untuk mengunduh versi Apache Tomcat terbaru. Angka versi dapat anda pelajari di :  https://tomcat.apache.org/download-10.cgi

cd /tmp export VERSION=10.1.28 wget https://www-eu.apache.org/dist/tomcat/tomcat-10/v${VERSION}/bin/apache-tomcat-${VERSION}.tar.gzcode-box

Setelah diunduh, jalankan perintah di bawah ini untuk membuat direktori instalasi Apache Tomcat baru /opt/tomcat dan ekstrak paket biner Tomcat ke dalamnya.

mkdir -p /opt/tomcat sudo tar -xf apache-tomcat-${VERSION}.tar.gz -C /opt/tomcatcode-box

Sekarang buat symlink baru dari direktori Tomcat yang diekstraksi ke /opt/tomcat/latest. Kemudian, ubah kepemilikan direktori /opt/tomcat ke pengguna tomcat.

sudo ln -s /opt/tomcat/apache-tomcat-${VERSION} /opt/tomcat/latest sudo chown -R tomcat:tomcat /opt/tomcatcode-box

Selanjutnya, buat file service systemd baru /etc/systemd/system/tomcat.service menggunakan editor nano.

sudo nano /etc/systemd/system/tomcat.servicecode-box

Terbuka nano , paste kode berikut , simpan dan keluar

[Unit] Description=Tomcat 10 servlet container After=network.target [Service] Type=forking User=tomcat Group=tomcat Environment="JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64" Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true" Environment="CATALINA_BASE=/opt/tomcat/latest" Environment="CATALINA_HOME=/opt/tomcat/latest" Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid" Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC" ExecStart=/opt/tomcat/latest/bin/startup.sh ExecStop=/opt/tomcat/latest/bin/shutdown.sh [Install] WantedBy=multi-user.targetcode-box

Jalankan perintah di bawah ini untuk memuat ulang pengelola systemd, lalu mulai dan aktifkan layanan tomcat.
sudo systemctl daemon-reloadcode-box

Lanjutkan untuk start tomcat dan enable

sudo systemctl start tomcat sudo systemctl enable tomcatcode-box

Setelah dimulai, verifikasi layanan tomcat menggunakan perintah di bawah ini. Pastikan layanan Tomcat Anda berjalan seperti berikut. Normal

sudo systemctl status tomcat code-box


Terakhir, buka browser web Anda dan kunjungi http://ip-publik-anda:8080/. Jika semuanya berjalan dengan baik, Anda akan melihat halaman indeks Apache Tomcat.

Selanjutnya Ubah Konfigurasi Tomcat 10

Ketikan perintah berikut

sudo nano /opt/tomcat/apache-tomcat-10.1.28/conf/server.xml code-box

Temukan baris yang disebutkan di bawah ini

<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />

Komentari pada baris bagian itu dengan <!-- di baris pertama dan –-> di baris terakhir. Tujuan nya agar konfigurasi tersebut non aktif. alert-warning

Tambahkan baris di bawah tepat di atas ke baris yang dikomentari dan simpan konten dan keluar dari konsol

<Connector port="8080"
            minSpareThreads="25"
            enableLookups="false"
            redirectPort="8443"
            connectionTimeout="20000"
            disableUploadTimeout="true"
            URIEncoding="UTF-8"/>

Agar berhasil konfigurasi Tomcat dan bisa run start lihat dan pelajari screnshot berikut alert-success



Sekarang Restart Tomcat 10 dengan konfigurasi baru

sudo systemctl daemon-reload code-box

sudo systemctl restart tomcat code-box

Pastikan tomcat tidak eror pasca edit konfigurasi. Untuk mengecek status tomcat ,ketik 

sudo systemctl status tomcat code-box

Kita lanjut install bagian backend Dspace 8.x

pindah ke directory root

cd / code-box

Dspace 8.x Instalasi backend

Pertama install git terlebih dahulu. Karena dibeberapa distro Linux belum tersedia git.

sudo apt install git -y  code-box

Versi versi DSpace dapat anda baca baca di link https://github.com/DSpace/DSpace/releases



Buat Direktori /opt/dspace8

Nanti nya dspace akan dibuild / deploy maven di directori /opt/dspace8 maka buat dulu 

sudo mkdir /opt/dspace8 code-box

Ubah kepemilikan direktori deployment menjadi pengguna sistem dspace.

sudo chown dspace:dspace -R /opt/dspace8 code-box

Download Source Code Dspace 8.0

Perintah berikut harus dijalankan di terminal pengguna dspace Harap dicatat bahwa ini tidak boleh dijalankan oleh root. Dengan mengubah nomor Versi yang disebutkan dalam warna hijau, Anda dapat menginstal versi 8.x berapapun. Pada tutorial berikut menggunakan DSpace 8 , karena pada tanggal 21 Agustus 2024 baru tersedia DSpace 8.0 apabila nanti nya anda membaca tutoril berikut setelah tanggal tersebut anda dapat install DSpace 8 versi diatas versi 8.0 mengganti angka versi nya. alert-success

Pindah user dspace
sudo -i -u dspace  code-box

Anda dapat install Dspace versi diatas versi 8.0 dengan mengubah versi angka versi yang berwarna hijau

wget https://github.com/DSpace/DSpace/archive/refs/tags/dspace-8.0.zip code-box

unzip dspace-8.0.zip code-box

rm dspace-8.0.zip code-box

cd DSpace-dspace-8.0 code-box

Konfigurasi Postgres Agar Konek DSpace 

Buka Terminal Baru dan login sebagai Pengguna Postgres

su postgres code-box

Posisi directory berada di /home/dspace/DSpace-dspace-8.0


Pindah directory 
cd /etc/postgresql/14/main code-box

Sekarang kita akan membuat pengguna bernama dspace pada database postgres. Dengan menjalankan perintah di bawah ini setelah menjalankan perintah di bawah ini akan meminta kata sandi. Ini adalah kata sandi koneksi untuk database dspace

createuser --username=postgres --no-superuser --pwprompt dspace code-box

Enter password for new role: ketik kata sandi untuk user dspace di postgres

Sekarang kita akan membuat database bernama dspace dan akan membuat pengguna dspace yang telah kita buat pada langkah sebelumnya sebagai pemilik untuk dspace database

createdb --username=postgres --owner=dspace --encoding=UNICODE dspace code-box

Aktifkan Ekstensi PgCrypto

psql dspace -c "CREATE EXTENSION pgcrypto;" code-box

Ketik perintah berikut , perintah berikut untuk keluar dari pengguna postgres.

exit code-box

Perintah ini harus dijalankan di terminal pengguna dspace Harap dicatat bahwa ini tidak boleh dijalankan dengan terminal  root atau terminal postgres, harus pengguna dspace alert-error

sudo -i -u dspace  code-box

cd /home/dspace/DSpace-dspace-8.0/dspace/config code-box

backup file konfigurasi asli 

cp local.cfg.EXAMPLE local.cfg code-box

nano local.cfg code-box

Ini akan membuka file konfigurasi,  ubah detail yang ditandai dengan warna hijau ke detail server Anda pakai , keluar kemudian simpan file. dspace.dir=/DSpace-dspace-8.0 karena pada tutorial ini tidak mengubah nama directori bawaan tujuan nya agar kita tahu versi dspace yang diinstal sehingga suatu saat akan upgrade memudahkan mengetahui versi dspace yang diinstall

Nanti nya saat menjalankan mvn package  dspace akan dibuild di /opt/dspace8
dspace.dir=/opt/dspace8
dspace.server.url = http://ip-address-anda:8080/server
dspace.ui.url = http://ip-address-anda:4000
dspace.name = Nama Repository Anda

Ubah juga detail solr , uncoment untuk mengaktifkan konfigurasi , hapus tanda # , dan ubah ke nomor IP anda
solr.server = http://ip-address-anda:8983/solr

# Database username and password
db.username = dspace
db.password = p4swoddpace

# General site administration (Webmaster) e-mail
mail.admin = repository@universitu.ac.id


Keluar kemudian simpan file


Pastikan Anda menjalankan perintah di bawah ini sebagai pengguna dspace di linux alert-error

sudo -i -u dspace code-box

cd /home/dspace/DSpace-dspace-8.0 code-box

Perintah di bawah ini akan memakan waktu 10 hingga 30 menit, terkadang lebih dari yang tergantung pada kecepatan internet dan respons server Anda. Jika semuanya dilakukan dengan baik, Anda akan mendapatkan Pesan BUILD SUCCESS pada akhirnya

mvn package code-box


Sekarang Jalankan langkah-langkah di bawah ini untuk memulai instalasi baru

sudo -i -u dspace code-box

cd /home/dspace/DSpace-dspace-8.0/dspace/target/dspace-installer code-box

ant fresh_install code-box

Jika semuanya dilakukan dengan baik, Anda akan mendapatkan Pesan BUILD SUCCESS pada akhirnya. Sekarang instalasi backend selesai


Sekarang kita perlu melakukan inisialisasi database , ingat dspace di deploy / buidl di /opt/dspace8/ maka kita pindah di direktori itu

cd /opt/dspace8/bin code-box

./dspace database migrate code-box

Perintah di atas akan memakan waktu lebih lama untuk menyelesaikannya. Setelah selesai, Anda akan mendapatkan pesan selesai.


Jalankan perintah di bawah ini sebagai terminal pengguna sudo karena folder tomcat dimiliki oleh root. Karena tadi masih sebagai user dspace linux , exit saja agar masuk ke user rootalert-error

exit code-box

sudo cp -R /opt/dspace8/webapps/* /opt/tomcat/apache-tomcat-10.1.28/webapps/ROOT/code-box

sudo cp -R /opt/dspace8/webapps/* /opt/tomcat/apache-tomcat-10.1.28/webapps/code-box

Cek list file yang ada di /opt/tomcat/apache-tomcat-10.1.28/webapps/

ls -la /opt/tomcat/apache-tomcat-10.1.28/webapps/code-box


Sekarang jalankan perintah di terminal pengguna dspace linux. ;alert-success

sudo -i -u dspace code-box

cp -R /opt/dspace8/solr/* /opt/solr-8.11.3/server/solr/configsetscode-box

chown -R dspace:dspace /opt/solr-8.11.3/server/solr/configsetscode-box

cd /opt/solr-8.11.3/bincode-box

./solr restartcode-box

Sekarang buka browser dan telusuri http://ip-publik-anda:8983 dan uji apakah Anda dapat melihat menu dropdown pemilih inti di panel kiri


Sekarang buat akun administrator dspace

/opt/dspace8/bin/dspace create-administratorcode-box

Berikan jawaban untuk Kueri yang diminta di layaralert-info


Jalankan perintah di bawah ini sebagai terminal pengguna sudo karena folder tomcat dimiliki oleh root , keluar dari user dspace di linux alert-success

exitcode-box

sudo chown -R tomcat:tomcat /opt/dspace8code-box

sudo systemctl daemon-reloadcode-box

sudo systemctl restart tomcatcode-box

Sekarang Buka Browser dan uji halaman di bawah ini ditampilkan
http://ip-publik-anda:8080/server/#/server/api


Dspace scra adefault menyediakan halaman info OAI.Open Archive Initiative Protocol for Metadata Harvesting (OAI-PMH) adalah sebuah mekanisme untuk mengumpulkan catatan yang berisi metadata dari repositori. Di dspace dapat anda akses 
http://ip-publik-anda:8080/server/oai/request?verb=Identify

Dspace 7.6.1 Angular – Instalasi Frontend

Node JS 18 atau 20 diperlukan untuk frontend. Frontend DSpace 8 telah ditingkatkan ke Angular 17, dan Node 16 tidak lagi didukung. Fungsi: Node.js digunakan untuk membuat aplikasi jaringan dan aplikasi server-side yang real-time dan scalable (bisa dikembangkan sesuai kebutuhan).


Berikut cara install Node JS , berdasarkan cara di web official Node JS , menggunakan FNM (Fast Node Manager ). Nanti nya NPM juga terinstall.
Menginstal fnm (Fast Node Manager)

curl -fsSL https://fnm.vercel.app/install | bashcode-box

Mengaktifkan FNM
source ~/.bashrccode-box

Download dan instal Node.js
fnm use --install-if-missing 20code-box

Memverifikasi versi Node.js yang telah diinstall
node -vcode-box

akan menampilkan versi v20.17.0

Cek versi NPM
npm -vcode-box

akan menampilkan versi 10.8.2

Selanjut nya install PM2 , Install pm2 (node.js process manager). Jalankan perintah sebagai root

npm install -g pm2code-box

Instal dependensi Angular yang diperlukan

npm install -g yarncode-box

Installasi Frontend Dspace Angular

Skema nya harap difahami , donload dulu source code Dspace Angular 8 nanti nya ekstrak dan build. alert-info

Pastikan ada di /home/dspace Pindah ke directroi home/dspace
cd /home/dspace/code-box

Download file source code dspace anggular 
wget https://github.com/DSpace/dspace-angular/archive/refs/tags/dspace-8.0.zipcode-box

Uzip dspace anggular 
unzip dspace-8.0.zipcode-box

Karena sudah kita ekstrak , hapus file dspace angular zip 
rm dspace-8.0.zipcode-box

Pindah ke direktori hasil ekstrak 
cd dspace-angular-dspace-8.0code-box

Install paket java script 
yarn installcode-box


Sekarang edit file konfigurasi angular

cd /home/dspace/dspace-angular-dspace-8.0/configcode-box

cp config.example.yml config.prod.ymlcode-box

nano config.prod.ymlcode-box

Perintah di atas akan membuka file config.prod.yml  edit konten yang ditandai dengan warna hijau ke ip-publik-anda dan simpan file tersebut

ui:
  ssl: false
  host: ip-publik-anda
  port: 4000

If we don’t have ssl then make the bellow changes

rest:
  ssl: false
  host: ip-publik-anda
  port: 8080

Perintah di bawah ini akan memeriksa apakah koneksi berfungsi dengan baik atau tidak

yarn test:restcode-box


Mari kita build frontend production

cd /home/dspace/dspace-angular-dspace-8.0/code-box

yarn build:prodcode-box

Perintah di atas mungkin memerlukan waktu 10 hingga 30 menit untuk menyelesaikan pembuatan build. Tunggu. Setelah selesai, Anda akan mendapatkan pesan Selesai. Sembari menunggu anda bisa menyeduh teh atau kopi

Buat file Json Production

cd /home/dspace/dspace-angular-dspace-8.0/code-box

nano dspace-ui.jsoncode-box

Perintah di atas akan membuka file kosong , copi paste baris di bawah ke file dan ubah konten bertanda hijau ke direktori dan versi Anda yang sebenarnya. lalu simpan file

{
    "apps": [
        {
           "name": "dspace-ui",
           "cwd": "/home/dspace/dspace-angular-dspace-8.0",
           "script": "dist/server/main.js",
           "instances": "max",
           "exec_mode": "cluster",
           "env": {
              "NODE_ENV": "production",
"NODE_OPTIONS": "--max-old-space-size=4096"
           },
"max_memory_restart": "500M"
        }
    ]
}

Catatan Khusus Tentang Konfigurasi di atas

  1. Mengatur "exec_mode" ke "cluster" akan mengaktifkan mode kluster, yang memungkinkan aplikasi jaringan (server HTTP(S)/TCP/UDP) diskalakan di semua CPU yang tersedia tanpa modifikasi kode apa pun 
  2. Pengaturan "instans" memungkinkan Anda menyesuaikan berapa banyak CPU yang tersedia untuk PM2 ("maks" = semua CPU. Tetapi Anda juga dapat menentukan angka seperti "4" = 4 CPU. )
  3. Pengaturan "max_memory_restart" bersifat opsional tetapi memberi tahu PM2 berapa banyak memori yang diizinkan per instans. Contoh di atas memiliki maksimal 500MB. Jika jumlah 'instance' adalah 8, itu berarti PM2 dapat menggunakan hingga 4 x 500MB = 2GB memori. Oleh karena itu, Anda mungkin ingin memodifikasi nilai "instance" dan/atau "max_memory_restart" untuk mengontrol memori yang tersedia untuk PM2 dengan lebih baik. Sesuaikan nilainya sesuai dengan memori dan persyaratan server Anda yang tersedia.
  4. Pada NODE_OPTION dengan memori >2GB yang tersedia, Node hanya akan menggunakan memori maksimum 2GB secara default (lihat https://github.com/nodejs/node/issues/28202). Memori 2GB ini seharusnya cukup untuk membangun dan menjalankan Antarmuka Pengguna, tetapi ada kemungkinan bahwa situs yang sangat aktif mungkin membutuhkan 4GB atau lebih."NODE_OPTIONS"
Dalam contoh ini, konfigurasi saya beri nama file"dspace-ui.json"

Jalankan kan file dengan perintah 

pm2 start dspace-ui.jsoncode-box


Sekarang jika konfigurasinya baik-baik saja maka Anda akan mendapatkan layar di mana statusnya online, buka browser Edge / Firefox dan periksa frontend berfungsi akses ip-anda:4000 , misal 103.27.206.224:4000


Untuk memulai layanan pada setiap restart pada linux , tambahkan kode di cronjob pengguna sudo

su rootcode-box

crontab -ecode-box

Tambahkan baris di bawah ini di bagian bawah cronjob yang dibuka , dan simpan file

@reboot pm2 start /home/dspace/dspace-angular-dspace-8.0/dspace-ui.json

Restart crontab

sudo systemctl restart cron.servicecode-box

Sebagai mekanisme tambahan Untuk memulai layanan PM2 menggunakan opsi .profile di Ubuntu, Anda dapat menambahkan perintah startup PM2 ke file .profile Anda, yang dijalankan setiap kali Anda masuk.

su rootcode-box

Buka file .profile Anda yang terletak di direktori beranda Anda dengan editor teks.

nano ~/.profilecode-box

Tambahkan baris berikut di akhir file .profile: dan simpan

pm2 start /home/dspace/dspace-angular-dspace-8.0/dspace-ui.json


Untuk menerapkan perubahan , jalankan perintah

source ~/.profilecode-box

Untuk mengelola proses PM2 dan memastikannya dimulai ulang saat reboot sistem, Anda dapat mengatur skrip startup PM2 dengan systemd. Ini dilakukan dengan menjalankan perintah berikut:

pm2 startup systemdcode-box


systemctl enable pm2-rootcode-box

pm2 savecode-box

Ya! Kami telah menyelesaikan proses instalasi. Dspace 8.0

Buka browser dan kunjungi http://ip-publik-anda:4000

___

Daftar Pustaka 


Posting Komentar

Post a Comment (0)

Lebih baru Lebih lama