Skip to content

nfrastack/container-moodle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

29 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nfrastack/container-moodle

About

This repository will build a container image for building Moodle. A Learning management System.

Maintainer

Table of Contents

Installation

Prebuilt Images

Feature limited builds of the image are available on the Github Container Registry and Docker Hub.

To unlock advanced features, one must provide a code to be able to change specific environment variables from defaults. Support the development to gain access to a code.

To get access to the image use your container orchestrator to pull from the following locations:

ghcr.io/nfrastack/container-moodle:(image_tag)
docker.io/nfrastack/moodle:(image_tag)

Image tag syntax is:

<image>:<optional tag>-<optional phpversion>

Example:

docker.io/nfrastack/container-moodle:latest or

ghcr.io/nfrastack/container-moodle:1.0-php84

  • latest will be the most recent commit

  • An optional tag may exist that matches the CHANGELOG - These are the safest

  • There may be an optional phpversion if there are mutiple builds using different PHP interpreters you may use those Have a look at the container registries and see what tags are available.

Multi-Architecture Support

Images are built for amd64 by default, with optional support for arm64 and other architectures.

Quick Start

Persistent Storage

The following directories/files should be mapped for persistent storage in order to utilize the container effectively.

Directory Description
/www/moodle Root moodle Directory
/data Course and other Moodle Data seperate from installation files

Environment Variables

Base Images used

This image relies on a customized base image in order to work. Be sure to view the following repositories to understand all the customizable options:

Image Description
OS Base Base Image
Nginx Nginx Webserver
Nginx PHP-FPM PHP-FPM Interpreter

Below is the complete list of available options that can be used to customize your installation.

  • Variables showing an 'x' under the Advanced column can only be set if the containers advanced functionality is enabled.

Required Always

Parameter Description Default _FILE
DATA_PATH Moodle Data and Course related files /data/
CRON_INTERVAL Time in minutes to be required to perform inernal maintenance tasks 1
ENABLE_REVERSE_PROXY Tweak nginx to run behind a reverse proxy for URLs TRUE / FALSE TRUE

First Insall Only or Upgrades

Parameter Description Default _FILE
MOODLE_VERSION Used to choose what Moodle Installation to install or Upgrade to (most recent)
ENABLE_AUTO_UPGRADE TRUE / FALSE if you pass a different MOODLE_VERSION than originally installed
ADMIN_EMAIL Email address for the Administrator x
ADMIN_USER Username for the Administrator x
ADMIN_PASS Password for the Administrator x
DB_HOST MariaDB external container hostname (e.g. moodle-db) x
DB_NAME MariaDB database name i.e. (e.g. moodle) x
DB_USER MariaDB username for database (e.g. moodle) x
DB_PASS MariaDB password for database (e.g. userpassword) x
DB_PORT MariaDB Port 3306 x
LANGUAGE Site Lanaguage en
SITE_PORT What Port does moodle deliver assets to 80
SITE_NAME The title of the Website
SITE_SHORT_NAME The short name of site e.g. example
SITE_URL The Full site URL of the installation
e.g. moodle.example.com

Maintenance

Shell Access

For debugging and maintenance, bash and sh are available in the container.

Support & Maintenance

  • For community help, tips, and community discussions, visit the Discussions board.
  • For personalized support or a support agreement, see Nfrastack Support.
  • To report bugs, submit a Bug Report. Usage questions will be closed as not-a-bug.
  • Feature requests are welcome, but not guaranteed. For prioritized development, consider a support agreement.
  • Updates are best-effort, with priority given to active production use and support agreements.

References

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Dockerized Learning Management System

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 2

  •  
  •