What is Tutor?

Tutor is an open source distribution of Open edX. It uses the original code from the various Open edX repositories, such as edx-platform, cs_comments_service, etc. and packages everything in a way that makes it very easy to install, administer and upgrade Open edX. In particular, all services are run inside Docker containers.

Tutor makes it possible to deploy Open edX locally, with docker-compose or on an existing Kubernetes cluster.

What is the purpose of Tutor?

To make it possible to deploy, administer and upgrade Open edX anywhere, easily.

What’s the difference with the official “native” installation?

The native installation maintained by edX relies on Ansible scripts to deploy Open edX on one or multiple servers. These scripts suffer from a couple issues that Tutor tries to address:

  1. Complexity: the scripts contain close to 35k lines of code spread over 780 files. They are really hard to understand, debug, and modify, and they are extremly slow. As a consequence, Open edX is often wrongly perceived as a project that is overly complex to manage. In contrast, Tutor generates mostly Dockerfile and docker-compose.yml files that make it easy to understand what is going on. Also, the whole installation should take about 10 minutes.

  2. Isolation from the OS: Tutor barely needs to touch your server because the entire platform is packaged inside Docker containers. You are thus free to run other services on your server without fear of indirectly crashing your Open edX platform.

  3. Compatibility: Open edX is only compatible with Ubuntu 16.04, but that shouldn’t mean you are forced to run this specific OS. With Tutor, you can deploy Open edX on just any server you like: Ubuntu 18.04, Red Hat, Debian… All docker-compatible platforms are supported.

  4. Security: because you are no longer bound to a single OS, with Tutor you are now free to install security-related upgrades as soon as they become available.

  5. Portability: Tutor makes it easy to move your platform from one server to another. Just zip-compress your Tutor project root, send it to another server and you’re done.

There are also many features that are not included in the native installation, such as a web user interface for remotely installing the platform, Kubernetes deployment, additional languages, etc. You’ll discover these differences as you explore Tutor :)

What’s the difference with the official devstack?

The devstack is meant for development only, not for production deployment. Tutor can be used both for production deployment and locally hacking on Open edX.

Is Tutor officially supported by edX?

No. Tutor is developed independently from edX. That means that the folks at edX.org are not responsible for troubleshooting issues of this project. Please don’t bother Ned ;-)

What features are missing from Tutor?

Tutor tries very hard to support all major Open edX features, notably in the form of plugins. In particular, the discovery and ecommerce services, once unavailable in Tutor, can now be easily installed via plugins. If you are interested in sponsoring the development of a new plugin, please get in touch!

It should be noted that the Analytics stack is currently unsupported, and will likely stay so in the future, as it would require a tremendous amount of work to containerize all the components. We are currently working on a replacement solution.

Are there people already running this in production?

Yes, many of them. There is no way to count precisely how many running Open edX platforms were deployed with Tutor, but from feedback collected directly from real users, there must be hundreds, if not thousands. Tutor is also used by some Open edX providers who are hosting platforms for their customers.

Why should I trust software written by some random guy on the Internet?

You shouldn’t :) Tutor is actively maintained by Overhang.IO, a France-based company founded by Régis Behmo. Régis has been working on Tutor since early 2018; he has been a contributor of the Open edX project since 2015. In particular, he has worked for 2 years at FUN-MOOC, one of the top 5 largest Open edX platforms in the world. He presented several talks at the Open edX conferences:

  • Deploying a robust, scalable Open edX platform in 1 click (or less) with Tutor, March 2019 (video, slides)

  • Videofront: a Self-Hosted YouTube, June 2017 (video, slides)

  • Open edX 101: A Source Code Review, June 2016 (video, slides)

  • FUN: Life in the Avant-Garde, Oct. 2015 (video, slides)