Tutor: the docker-based Open edX distribution designed for peace of mind¶
Tutor is a docker-based Open edX distribution, both for production and local development. The goal of Tutor is to make it easy to deploy, customize, upgrade and scale Open edX. Tutor is reliable, fast, extensible, and it is already used by dozens of Open edX platforms around the world.
“Tutor is an absolutely fabulous initiative” – Lionel Meinertzhagen, Learning engineer - Université Libre de Bruxelles
“Tutor just keeps on giving” – Stephen Brewer, Project Leader - IT Consulting
“Tutor has been a Godsend” – Micah L.
Quickstart (1-click install)¶
Download the latest stable release of Tutor, uncompress the file and place the
tutorexecutable in your path. From the command line:
sudo curl -L "https://github.com/overhangio/tutor/releases/download/v3.8.0/tutor-$(uname -s)_$(uname -m)" -o /usr/local/bin/tutor sudo chmod 0755 /usr/local/bin/tutor
tutor local quickstart
Yes :) This is what happens when you run
tutor local quickstart:
You answer a few questions about the Configuration of your Open edX platform.
Configuration files are generated from templates.
Docker images are downloaded.
Docker containers are provisioned.
A full, production-ready platform is run with docker-compose.
The whole procedure should require less than 10 minutes, on a server with a good bandwidth. Note that your host environment will not be affected in any way, since everything runs inside docker containers. Root access is not even necessary.
There’s a lot more to Tutor than that! To understand what Tutor does and how it works, take a look at the introduction.
- Quickstart (1-click install)
- Configuration and customisation
- Local deployment
- Kubernetes deployment
- Open edX development
- Extra features
- “Cannot start service nginx: driver failed programming external connectivity”
- Help! The Docker containers are eating all my RAM/CPU/CHEESE
- “Running migrations… Killed!”
- “Build failed running pavelib.servers.lms: Subprocess return code: 1”
- “ValueError: Unable to configure handler ‘local’”
- “TypeError: get_logger_config() got an unexpected keyword argument ‘debug’”
- The chosen default language does not display properly
- Tutor development
- What is Tutor?
- What is the purpose of Tutor?
- What’s the difference with the official “native” installation?
- What’s the difference with the official devstack?
- Is Tutor officially supported by edX?
- What features are missing from Tutor?
- Are there people already running this in production?
- Why should I trust software written by some random guy on the Internet?
The complete source code for Tutor is available on Github: https://github.com/overhangio/tutor
To get community support, go to the official discussion forums: https://discuss.overhang.io.
We are very much open to new ideas and features for Tutor. If you have an improvement idea, feel free to first discuss it on the Tutor forums. If you are not quite familiar with Open edX or if you need technical advice, the forums are a great place to start, too. Did you find an issue with Tutor? Please first make sure that it’s related to Tutor, and not an upstream issue with Open edX. Then, open an issue on Github. Pull requests will be happily examined, too!
This work is licensed under the terms of the GNU Affero General Public License (AGPL).
The AGPL license covers the Tutor code, including the Dockerfiles, but not the content of the Docker images which can be downloaded from https://hub.docker.com. Software other than Tutor provided with the docker images retain their original license.