Cara Install Moodle 4.3 untuk Learning Management System di Ubuntu 22.04
Moodle, singkatan dari Modular Object-Oriented Dynamic Learning Environment, adalah platform sumber terbuka yang kokoh dirancang untuk memfasilitasi pembelajaran online dan manajemen kursus. Dikembangkan oleh Martin Dougiamas pada tahun 2002, Moodle telah berkembang menjadi salah satu Sistem Manajemen Pembelajaran (LMS) yang paling banyak digunakan secara global.
Baik Anda sebagai seorang pendidik, administrator, atau pelajar, Moodle menawarkan lingkungan yang kokoh dan fleksibel untuk membuat dan berpartisipasi dalam kursus online. Dalam tutorial ini, kita akan belajar bagaimana menginstal Moodle 4.3 dengan spesifikasi berikut:
- Vultr Cloud Server: 1 CPU, 1 GB RAM, 32 GB Storage
- Operating System: Ubuntu 22.04 LTS
- Subdomain: lms.aminlabs.my.id
- SSL: Let’s Encrypt
- Web Server: Apache
- PHP: PHP v8.1
- Database: MariaDB v10.6
- Moodle: Moodle v4.3.2
Catatan: Daftar di sini untuk mendapatkan $100 free credit dari Vultr
1. Update Sistem
Konek ke server dan lakukan update:
1 2 | apt update apt upgrade -y |
Catatan: Tutorial ini menggunakan user root.
2. Install Paket
Install paket yang dibutuhkan oleh Moodle, yaitu Apache web server, PHP, dan MariaDB database:
1 | apt install apache2 libapache2-mod-php php-mysql php-mbstring php-curl php-tokenizer php-xmlrpc php-soap php-zip php-gd php-xml php-intl mariadb-server -y |
Buka file konfigurasi php.ini
:
1 | nano /etc/php/8.1/apache2/php.ini |
Atur konfigurasi berikut:
1 | max_input_vars = 5000 |
3. Membuat Database
Login ke MariaDB:
1 | mysql |
Membuat database untuk Moodle:
1 2 3 4 | CREATE DATABASE lms_aminlabs DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; GRANT ALL PRIVILEGES ON lms_aminlabs.* TO 'lms_aminlabs'@'localhost' IDENTIFIED BY 'secretpassword'; FLUSH PRIVILEGES; exit |
4. Download Moodle
Download Moodle v4.3.2 dari https://download.moodle.org:
1 | wget https://packaging.moodle.org/stable403/moodle-4.3.2.tgz |
Extract moodle-4.3.2.tgz
:
1 | tar xzvf moodle-4.3.2.tgz |
Memindahkan direktori moodle
ke /var/www/lms.aminlabs.my.id/moodle-app
:
1 2 | mkdir /var/www/lms.aminlabs.my.id mv moodle /var/www/lms.aminlabs.my.id/moodle-app |
Membuat direktori moodle-data
:
1 | mkdir /var/www/lms.aminlabs.my.id/moodle-data |
Mengubah user-group dan permission untuk direktori lms.aminlabs.my.id
:
1 2 | chown -R www-data:www-data /var/www/lms.aminlabs.my.id chmod -R 755 /var/www/lms.aminlabs.my.id |
5. Konfigurasi Virtual Host
Membuat konfigurasi virtual host untuk subdomain lms.aminlabs.my.id
:
1 | nano /etc/apache2/sites-available/lms.aminlabs.my.id.conf |
Masukkan konfigurasi virtual host berikut:
1 2 3 4 5 6 7 8 9 10 11 | <VirtualHost *:80> ServerName lms.aminlabs.my.id DocumentRoot /var/www/lms.aminlabs.my.id/moodle-app <Directory /var/www/lms.aminlabs.my.id/moodle-app> Options -Indexes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> ErrorLog /var/log/apache2/lms.aminlabs.my.id_error.log CustomLog /var/log/apache2/lms.aminlabs.my.id_access.log combined </VirtualHost> |
Mengaktifkan modul rewrite, virtual host, dan restart Apache:
1 2 3 | a2enmod rewrite a2ensite lms.aminlabs.my.id systemctl restart apache2 |
Memeriksa status UFW firewall:
1 2 3 4 5 6 7 | ufw status Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) |
Jika UFW aktif, ijinkan trafik ke port HTTP dan HTTPS:
1 2 | ufw allow http ufw allow https |
Browse subdomain untuk menguji apakah Moodle sudah dapat diakses:
6. Konfigurasi HTTPS
Install certbot:
1 | apt install certbot python3-certbot-apache -y |
Request sertifikat SSL untuk subdomain:
1 | certbot --non-interactive -m admin@aminlabs.my.id --agree-tos --no-eff-email --apache -d lms.aminlabs.my.id --redirect |
Pesan yang ditampilkan jika request sertifikat SSL berhasil:
1 2 3 4 5 6 7 8 9 10 11 12 | Requesting a certificate for lms.aminlabs.my.id Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/lms.aminlabs.my.id/fullchain.pem Key is saved at: /etc/letsencrypt/live/lms.aminlabs.my.id/privkey.pem This certificate expires on 2024-04-02. These files will be updated when the certificate renews. Certbot has set up a scheduled task to automatically renew this certificate in the background. Deploying certificate Successfully deployed certificate for lms.aminlabs.my.id to /etc/apache2/sites-available/lms.aminlabs.my.id-le-ssl.conf Congratulations! You have successfully enabled HTTPS on https://lms.aminlabs.my.id |
Browse subdomain untuk menguji hasil konfigurasi HTTPS:
7. Web Installation
Melanjutkan install Moodle di web browser. Pilih bahasa, misal English (en)
, lalu klik Next
.
Masukkan path untuk direktori Data directory
, yaitu /var/www/lms.aminlabs.my.id/moodle-data
, lalu klik Next
:
Database driver, pilih MariaDB (native/mariadb)
, lalu klik Next
.
Enter database settings, masukkan Database name
, Database user
, dan Database password
. lalu klik Next
:
Copyright notice, klik Continue
untuk confirm.
Memeriksa server environment telah memenuhi requirements. Klik Continue
jika semuanya OK
.
Install sedang berjalan. Klik Continue
jika sudah selesai.
Membuat akun admin, lalu klik Update profile
.
Konfigurasi Site home settings
, lalu klik Save changes
:
Install Moodle telah selesai.
Site registration, klik Skip
.
Selamat! Kita telah berhasil menginstal Moodle 4.3 pada Ubuntu 22.04. Mari jelajahi fitur-fitur platform ini, sesuaikan kursus-kursus kita, dan mulailah perjalanan pembelajaran online yang lancar dengan Moodle.