šŸŽ“ Moodle: Platform E-Learning Self-Hosted yang Saya Gunakan di Docker

šŸŽ“ Moodle: Platform E-Learning Self-Hosted yang Saya Gunakan di Docker

✨ Pendahuluan

Saya sudah lama tertarik dengan dunia e-learning. Ketika mulai mengelola homelab, saya ingin punya platform pembelajaran daring sendiri untuk menyimpan materi, kursus, dan catatan. Dari berbagai pilihan, saya akhirnya memilih Moodle sebagai LMS (Learning Management System) utama yang saya self-hosting.

🧩 Apa Itu Moodle?

Moodle adalah platform open-source e-learning yang sangat populer di sekolah, kampus, dan lembaga pelatihan. Dengan Moodle, saya bisa membuat kursus online, kuis, forum diskusi, repositori materi, dan manajemen pengguna dengan kontrol penuh.

Beberapa fitur Moodle yang saya sukai:

āœ… Sistem manajemen kursus lengkap.

āœ… Modul kuis, tugas, dan aktivitas interaktif.

āœ… Support plugin dan tema yang sangat banyak.

āœ… Dokumentasi komunitas yang sangat luas.

šŸ› ļø Kenapa Saya Memilih Moodle?

šŸŽÆ Kontrol Penuh – Semua data dan konfigurasi 100% berada di server saya.

šŸŽÆ Kustomisasi Bebas – Bisa pasang plugin dan tema sesuai kebutuhan.

šŸŽÆ Skalabilitas – Mendukung banyak user sekaligus.

šŸŽÆ Integrasi Mudah – Bisa diintegrasikan dengan LDAP, Google, dan sistem lain.

āš™ļø Cara Instalasi Moodle di Docker

Saya menginstall Moodle menggunakan Docker dan Docker Compose agar lebih mudah dikelola.

Contoh docker-compose.yml yang saya gunakan:

version: '3'

services:
  moodle:
    image: moodlehq/moodle-php-apache:latest
    ports:
      - "8080:80"
    environment:
      - MOODLE_URL=https://moodle.kicap-karan.com
      - MOODLE_DOCKER_DBTYPE=mariadb
      - MOODLE_DOCKER_DBNAME=moodle
      - MOODLE_DOCKER_DBUSER=moodle
      - MOODLE_DOCKER_DBPASS=moodlepass
      - MOODLE_DOCKER_DBHOST=db
    volumes:
      - moodledata:/bitnami/moodle

  db:
    image: mariadb:10.5
    environment:
      - MYSQL_ROOT_PASSWORD=rootpass
      - MYSQL_DATABASE=moodle
      - MYSQL_USER=moodle
      - MYSQL_PASSWORD=moodlepass
    volumes:
      - dbdata:/var/lib/mysql

volumes:
  moodledata:
  dbdata:

Langkah instalasi:

1ļøāƒ£ Buat folder project dan simpan docker-compose.yml.

2ļøāƒ£ Jalankan docker-compose up -d.

3ļøāƒ£ Akses http://<IP-server>:8080 untuk konfigurasi pertama kali.

4ļøāƒ£ Selesai, Moodle sudah berjalan.

🌟 Kelebihan Moodle

āœ… Gratis dan open-source.

āœ… Fitur lengkap untuk pembelajaran daring.

āœ… Dukungan komunitas besar.

āœ… Mendukung plugin dan integrasi.

āŒ Kekurangan Moodle

āŒ Tampilan default cukup sederhana (perlu tema tambahan).

āŒ Banyak fitur sehingga awalnya terasa rumit.

āŒ Butuh server dengan resource lumayan jika user banyak.

Kalau ingin melihat contoh implementasi Moodle yang saya pakai, ini linknya:

🌐 moodle.kicap-karan.com

šŸŽÆ Penutup

Dengan Moodle, saya bisa membangun platform belajar online yang sepenuhnya dikelola sendiri. Jika kamu juga ingin self-hosting LMS untuk komunitas, organisasi, atau belajar mandiri, Moodle di Docker sangat layak dicoba. šŸš€