Sign inSign up

leonmsaia/moodle-lab

By leonmsaia

•Updated 11 months ago

Moodle 4.1 – Custom PHP 8.0 + Apache Image

Image
Languages & frameworks
Content management system
0

135

leonmsaia/moodle-lab repository overview

Moodle 4.1 – Custom PHP 8.0 + Apache Image

A fully customized Docker image optimized for running Moodle 4.1 using PHP 8.0 and Apache. This image includes all required PHP extensions, Apache configuration, and development-friendly settings suitable for plugin development, local environments, and testing.

Features This image is based on: FROM php:8.0-apache Includes all required PHP extensions for Moodle: intl mysqli, pdo, pdo_mysql gd (with JPEG + FreeType support) xml, soap curl mbstring zip exif opcache

Additional libraries installed: libicu-dev libxml2-dev libzip-dev libpng-dev libjpeg-dev libfreetype6-dev libonig-dev libcurl4-openssl-dev libxslt1-dev

Apache configuration: mod_rewrite enabled Custom PHP configuration (moodle-dev.ini): display_errors = On display_startup_errors = On error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT memory_limit = 256M upload_max_filesize = 50M post_max_size = 50M max_execution_time = 300 max_input_vars = 5000

These settings ensure that Moodle runs smoothly and that plugin development is not blocked by PHP limits.

Working Directory The default working directory for Moodle files: /var/www/html You are expected to mount Moodle’s codebase here via volumes.

Example docker-compose.yml services: moodle: image: leonmsaia/moodle-lab:latest container_name: moodle-app restart: unless-stopped ports: - "8080:80" volumes: - ./moodle:/var/www/html - ./moodledata:/var/www/moodledata depends_on: - db

db: image: mariadb:10.6 container_name: moodle-db restart: unless-stopped environment: MYSQL_ROOT_PASSWORD: rootpassword MYSQL_DATABASE: moodle MYSQL_USER: moodle MYSQL_PASSWORD: moodlepassword volumes: - ./db:/var/lib/mysql

Usage This image is ideal for: Moodle plugin development Local LMS experimentation

Running Moodle 4.1 without Bitnami or official MoodleHQ images Classroom environments and lab exercises Rapid setup on Docker-based environments

Notes A separate volume for moodledata is required in all Moodle setups. For production environments, additional hardening and HTTPS termination are recommended. This image focuses on compatibility and flexibility, especially for development workflows.

Tags latest – Always points to the latest stable build.

Tag summary

Content type

Image

Digest

sha256:f7f7545aa…

Size

207.8 MB

Last updated

11 months ago

docker pull leonmsaia/moodle-lab