I’m customizing and deploying an Open edX instance for an Australian university. Getting a simple Open edX instance running is very simple; actually running it in production requires a lot of work. This series of blog posts summarises what I’ve learned in the process.
Open edX is a moving target. Like all of the documentation on the web, these posts could be out of date by the time you read them. Please leave a comment or send me an email if you find a problem.
Open edX is a very rapidly moving target. There are no stable releases yet. The repositories (even the slightly-more-stable
release branch) are frequently broken.
I have tried to address the major undocumented things here, but stuff breaks all of the time.
I strongly recommend that you have separate staging and production systems. If you run untested commits on your production server, you will have unplanned downtime.
I would like to suggest that you can just pass a commit ID to
/edx/bin/update, but that doesn’t work. I’m working around it with a local fork of edx-platform.
All of the fun commands are accessible through the Django management interface (
manage.py). There’s lot of bad documentation out there on how to reach this. What’s working for me (at 10 Nov 2014) is
# as root cd /edx/bin sudo -u www-data ./python.edxapp ./manage.edxapp lms