Common Cartridge testing with an Open Source LMS (Canvas)
Overview
Building content that will be utilized by a Learning Management System (LMS) requires a development environment that has a running LMS. Preferably if you are going to build content using an open source mechanism, you should have as many LMSs as you can, in order to ensure that your content can play on all of them.
Here are the instructions for setting up Canvas, one specific LMS that supports Common Cartridge, a standard created by IMS Global Learning Consortium that is supported by a variety of products, on both the content and provider side.
Choosing an installation method
There are several approaches to set up your environment. By far the easiest is to not set up an environment at all, but instead to use the “try” button on the Canvas website. This is the easiest method, but it does not allow you to customize the installation entirely, as you may want to do if you plan to develop for Canvas.
The next way to set this up to run locally is to follow the steps in the canvas GitHub repository. This will set up a local docker container, running Canvas. It also requires you to run PostgreSQL locally, and use that for this to connect to. This may be the most desirable mechanism as you probably have PostgreSQL running locally anyway if you are doing a lot of open source development. This is the method that is described here.
Finally, another mechanism is to set up Canvas on a local Virtual Machine that is running both Canvas and the database. If you are interested in pursuing this, here is a link to a VirtualBox setup.
Setup Canvas for Development
This setup applies to Mac OSX. The first step is to clone the repository locally
git clone git@github.com:instructure/canvas-lms.git cd canvas-lms
Next, you can run the installation script, this will require Brew and Docker to be installed.
./script/docker_dev_setup.sh
This will prompt for several answers and each installation is slightly different depending on the machine that it is being run on. In most cases, it will update Brew and may require you to install dinghy
.
Once it has finished, you need to create the virtual machine. This command assumes that you want to use VirtualBox. If you want to use another provider, such as Parallels or VMWare, specify those after provider.
dinghy create --provider virtualbox
Once this completes your Canvas instance will be running locally, to open the virtual machine open your browser to http://canvas.docker
You now have a running local version of Canvas to experiment with.