elama ini kita ketahui bahwa instalasi eRapor SMK di sistem operasi
Windows relatif mudah dan cepat untuk dilakukan. Namun instalasi eRapor
SMK di Linux memiliki keunggulan tersendiri dibandingkan instalasi di
Windows karena beberapa hal :
- Keamanan yang lebih baik karena umumnya dikhususkan untuk server saja, tidak digunakan untuk pekerjaan lain. Relatif mudah untuk mengimplementasikan teknologi TLS/SSL (misal via LetsEncrypt)
- Umumnya layanan web hosting dan VPS menggunakan sistem operasi Lunux
- Bebas dari ancaman virus yang dapat membuat layanan eRapor SMK terhenti dan mengganggu kegiatan penilaian maupun penerimaan rapor
- dsb.
Pada tutorial ini yang digunakan adalah distro Ubuntu Server 18.04.3
LTS (Long Term Support), tanpa desktop. Distro ini kami pilih karena
relatif ringan dan kebetulan memiliki versi PHP bawaan sesuai dengan
yang dibutuhkan oleh eRapor SMK versi 5, yaitu versi 7.2.x, sehingga
tidak memerlukan langkah yang terlalu rumit untuk instalasi PHP. Selain
itu, seri LTS tentunya memiliki keunggulan tersendiri karena dukungan
yang diberikan oleh Ubuntu jauh lebih lama dibanding rilis reguler
(baca: Ubuntu Release Cycle). Berikut adalah langkah-langkah yang perlu dilakukan saat melakukan instalasi eRapor SMK di Ubuntu Server 18.04.3 :
Install Sistem Operasi
Install Ubuntu Server 18.04.3 menggunakan file ISO yang dapat diunduh di sini : Ubuntu 18.04.3 LTS (Bionic Beaver).
Gunakan jaringan dengan koneksi internet yang tersedia melalui setting
DHCP, atau setting IP static pada saat instalasi jika Anda sudah
memiliki IP address yang disiapkan secara khusus (misal: koneksi
internet dedicated dengan IP public yang static)
Pada
langkah untuk menginstall OpenSSH Server, silakan pilih untuk
menginstallnya, karena akan sangat membantu saat mengelola server
melalui jaringan (misal menggunakan aplikasi puTTY). Pada contoh yang digunakan ini, user biasa (sudo-er) yang dibuat pada saat instalasi adalah erapor, untuk itu sesuaikan langkah-langkah pada tutorial ini jika Anda menggunakan username yang berbeda.
*catatan:
Jika Anda menggunakan layanan VPS, biasanya Anda cukup memilihnya saja
dari paket OS yang ditawarkan, lalu akan diberikan akses ke sistem
operasi menggunakan akun tertentu
Login ke Sistem Operasi
Setelah langkah instalasi selesai, Anda bisa masuk (login) ke command
line interface menggunakan username dan password yang Anda tentukan
pada saat instalasi.
login awal ke Ubuntu Server 18.04.3 |
Penggantian Setting IP Address ke IP Static
Penggantian alamat IP menjadi static diperlukan jika Anda lupa atau
belum melakukan setting IP static pada saat instalasi. IP static mutlak
diperlukan karena server memang seharusnya memiliki alamat IP yang tidak
berubah-ubah setiap waktu (kecuali menggunakan static lease di
DHCP server tentunya). Ketikkan perintah berikut, lalu masukkan
password untuk user sistem operasi yang Anda tentukan pada saat
instalasi. Setiap kali Anda menjalankan perintah menggunakan sudo untuk
pertama kali setiap sesi, Anda harus memasukkan password.
Tips:
Jika Anda sedang memerlukan untuk menjalankan banyak perintah di CLI sebagai root / superuser, bisa menggunakan prompt selaku root menggunakan perintah :sudo su
Maka berikutnya Anda tidak perlu lagi mengawali perintah menggunakan keyword sudo. Untuk kembali ke prompt sebagai user biasa, gunakan Ctrl-D, atau su namauser
$ sudo nano /etc/netplan/50-cloud-init.yaml
Edit konfigurasi tersebut menjadi seperti ini, atau menyesuaikan dengan konfigurasi yang ada di sekolah / server / VPS Anda :
Jangan gunakan Tab saat mengedit file ini, karena format yaml tidak membolehkannya. Gunakan spasi biasa.
Simpan konfigurasi dengan Ctrl-X, pilih Y, lalu Enter. Lalu restart netplan untuk menerapkan perubahan setting IP menggunakan perintah:
$ sudo nano netplan apply
Cek efektivitas setting IP yang baru saja Anda terapkan dengan menggunakan perintah ifconfig . Lakukan juga pengujian menggunakan ping dari komputer lain di jaringan.
Instalasi dan Setting Aplikasi Prasyarat (prerequisites) yang Dibutuhkan eRapor SMK
Ubuntu menggunakan APT (Application Packaging Tool) untuk manajemen paket aplikasi, seperti yang digunakan di Debian. Untuk memastikan bahwa index aplikasi yang akan diinstall sudah dimutakhirkan, jalankan perintah :
$ sudo apt update
Jika sukses, install aplikasi yang dibutuhkan menggunakan perintah berikut:
$ sudo apt install apache2 libapache2-mod-php7.2 php7.2 php7.2-xml php7.2-gd php7.2-opcache php7.2-mbstring php7.2-curl php7.2-zip php7.2-pgsql composer postgresql postgresql-contrib
Jika semua berjalan dengan lancar, seharusnya perintah tersebut (setelah Anda konfirmasi untuk memulai menginstall), akan berakhir seperti ini. Jika masih ada yang “Failed” atau “Error”, maka cek kembali konfigurasi IP address Anda.
Penambahan Ekstensi ionCube Loader bagi PHP 7.2
Download dan copy ionCube Loader menggunakan perintah berikut:
$ sudo su
# cd /tmp && wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
# tar xzf ioncube_loaders_lin_x86-64.tar.gz
# cp ioncube/ioncube_loader_lin_7.2.so /usr/lib/php/7.2/
Tambahkan ionCube Loader sebagai ekstensi PHP dengan mengedit file (bisa menggunakan nano) /etc/php/7.2/apache2/php.ini dan /etc/php/7.2/cli/php.ini pada bagian atas file yang bertanda [PHP] menjadi seperti ini:
[PHP]
zend_extension=/usr/lib/php/7.2/ioncube_loader_lin_7.2.so
Restart Apache menggunakan perintah:
# service apache2 reload
Uji coba apakah ionCube Loader sudah berhasil terpasang, dengan perintah:
# php -v
Jika sudah sesuai, seharusnya muncul tampilan semacam ini:
Jalankan perintah berikut untuk membuat akun baru bagi server database:
# sudo -u postgres createuser --interactive
masukkan nama user biasa yang Anda gunakan saat instalasi |
Buat database sesuai dengan nama user yang dibuat pada langkah sebelumnya, menggunakan :
# sudo -u postgres createdb erapor
Tidak ada output apa2 dari langkah tersebut, namun tetap diperlukan untuk membuat database baru. Jika perintah tersebut dijalankan untuk kedua kalinya, maka akan ada pesan bahwa database yang akan dibuat sudah ada.
Set Password Akun Database
Set password bagi akun database yang dibuat pada langkah sebelumnya tadi, menggunakan :
# sudo -u postgres psql
Setelah mendapatkan prompt postgres=# , ketikkan perintah berikut lalu akhiri dengan enter (ganti passwordnya dengan password lain yang Anda kehendaki. Tetap gunakan tanda petik satu untuk mengapitnya.):
ALTER USER erapor WITH PASSWORD 'passwordnya';
Pesan yang muncul seharusnya hanyalah teks ALTER ROLE
Cloning aplikasi eRapor SMK dari repository
Untuk langkah berikut, pastikan Anda sudah mengaktifkan prompt sebagai user biasa, ditandai dengan tanda dollar ($). Jika belum, jalankan perintah berikut (sesuaikan “erapor” dengan username yang Anda gunakan saat menginstall):
# su erapor
Pindah ke home directory user :
$ cd ~
untuk memastikan, gunakan perintah pwd. Outputnya kurang lebih seperti ini:
Lakukan cloning repository :
$ git clone --depth=1 https://github.com/eraporsmk/eraporsmk.git erapor5
catatan: saat repository nantinya dibuka menjadi public, Anda tidak perlu memasukkan username dan password
Masuk ke directory erapor5, dan hapus directory .git:
$ cd erapor5
$ rm -rf .git
Install dependencies menggunakan composer :
PERHATIAN:
proses ini dapat berlangsung cukup lama, tergantung beban server yang diakses dan koneksi internet yang Anda gunakan. Jika ada bagian yang “failed”, ulangi kembali menjalankan perintah tersebut
$ composer install
Contoh output perintah tersebut jika sukses:
Setting Koneksi Database
Copy sampel file .env untuk digunakan dalam menyimpan konfigurasi database, lalu edit dan sesuaikan dengan setting yang disiapkan pada langkah di atas :
$ cp .env.example .env
$ nano .env
sesuaikan bagian ini, lalu simpan dan keluar dari nano
Generate App Key
$ php artisan key:generate
Membuat struktur table
$ php artisan migrate
Menjalankan Seeder untuk mengisi database dengan data referensi
$ php artisan db:seed
Mengganti kepemilikan file dan directory web kepada webserver, serta memindah aplikasi ke /var/www/
# sudo chown -R www-data:www-data /home/erapor/erapor5/
# mv /home/erapor/erapor5/ /var/www/
Mengaktifkan mod_rewrite di Apache
# sudo a2enmod rewrite
# sudo systemctl restart apache2
Menambahkan setting pada Apache untuk membolehkan penggunaan file .htaccess dan mengganti DocumentRoot ke directory public
Edit file konfigurasi Apache untuk default site:
# sudo nano /etc/apache2/sites-enabled/000-default.conf
Sesuaikan bagian DocumentRoot menjadi sebagai berikut, serta tambahkan 3 baris seperti ini di bawahnya :
DocumentRoot /var/www/erapor5/public
<Directory /var/www/erapor5/public>
AllowOverride All
</Directory>
Post a Comment