Derek Coleman & Associates Inc logoDerek Coleman & Associates Inc

Home / Marketplace / Moodle on Ubuntu 24.04 LTS

Moodle on Ubuntu 24.04 LTS

Moodle is the world's most widely used open-source learning management system for online courses, assessments, and training. This image gives you a production-ready deployment within minutes of first boot — no dependency wrangling, no manual hardening checklist. Published and maintained by Derek Coleman & Associates Inc: freshly rebuilt against current security advisories and deployable straight from the Azure Marketplace into your own subscription.

Version: Moodle 4.5.1 (Apache 2.4, PHP 8.3, PostgreSQL)Platform: Ubuntu 24.04 LTSPorts: 80 (web UI), 443Category: Applications

What's included

  • Moodle 4.5.1 installed from the official upstream source
  • Ubuntu 24.04 LTS base with automatic security updates enabled
  • No shared or default passwords — a unique admin credential is generated on your VM at first boot
  • Trusted Launch support: Secure Boot + vTPM
  • Azure Monitor Agent, Defender for Cloud, and Update Manager install cleanly

Quick start

Known issue on the current image (as of 2026-09-17) — The site installs and the generated admin sign-in works, but the image ships without Moodle's scheduled-task runner and with nothing listening on 443: no cron entry, cron.d file or timer ever runs admin/cli/cron.php, so scheduled tasks, outgoing mail, automated backups and search indexing never run and Site administration > Notifications flags the site as incomplete; and although the listing advertises ports 80 and 443, only 80 answers. Workaround and fix status on the support page.
  1. Deploy from the Azure Marketplace (Get It Now → Create), choosing your SSH key at the Administration step.
  2. Allow inbound SSH (22) for yourself plus the application port(s): 80 (web UI) — restrict to your own IP where possible. The in-image firewall already allows them; only the Network Security Group (NSG) keeps them closed.
  3. Open http://<VM-IP>/login/index.php and sign in as admin (see First login below).
  4. Set the site name and $CFG->wwwroot for your domain in /var/www/moodle/config.php, then enable HTTPS.

Get your admin password (one time)

ssh <your-username>@<VM-IP>
sudo cat /var/moodledata/admin-password

Every image ships without any shared or default password — a unique admin credential is generated for your VM on first boot. Change it after first sign-in.

Common use cases

  • Corporate training and onboarding
  • School and university course delivery
  • Compliance training with tracking
  • Self-paced learning portals

Why our images

Freshly rebuilt against the latest security advisories, no shared default credentials, Trusted Launch support, and automatic OS security updates — everything runs in your own Azure subscription under your governance.

Deploy Moodle in minutes

Production-ready, hardened, and maintained. Deploy straight from the Azure Marketplace into your subscription.