This project aims to provide an easy way to start developing for Totara by providing a Docker setup.
This setup was created and tested extensively on MacOS and Linux. It also works on Windows via WSL2.
Although this project started as a development environment for Totara Learn it can be adapted for use in any other PHP project.
- NGINX as a webserver
- Apache as a webserver
- PHP 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0, 8.1, 8.2, 8.3 to test for different versions
- PostgreSQL (9.3, 9.6, 10, 11, 12, 13, 14, 15, 16),
- MariaDB (10.2, 10.3, 10.4, 10.5, 10.6, 10.7, 10.8, 10.11, 11.4),
- MySQL (5.7, 8.0, 8.4),
- Microsoft SQL Server (2017, 2019, 2022)
- NodeJS for building, developing and testing frontend code
- A PHPUnit and Behat setup to run tests (including Selenium)
- A mailcatcher instance to view sent emails
- Redis for caching and/or session handling
- XHProf for profiling
- XDebug installed, ready for debugging with your favorite IDE
- A Python instance to run the Totara Machine Learning service
- Optimised for Apple Silicon
See the wiki for detailed documentation on installation and usage.
Please check out the contributing guide for more information on how you can help us.