How to Install edX on Debian

In this tutorial, we will guide you through the process of installing edX on Debian. EdX is a popular online learning platform that offers thousands of online courses.

Step 1: Install Required Packages

The first step is to install the necessary packages required by edX. You can do this by running the following command:

sudo apt-get install -y build-essential git-core python-pip python-dev

Step 2: Clone the edX Repository

Next, clone the edX repository from GitHub using the following command:

git clone https://github.com/edx/edx-platform.git

Step 3: Install edX Dependencies

Now, navigate to the edx-platform directory and run the following command to install the required dependencies:

sudo -H pip install -r requirements.txt

Step 4: Configure MySQL

You will need to configure a MySQL database for edX to run. Install MySQL using the following command:

sudo apt-get install mysql-server

Then, create a new database and user for edX. You can do this by running the following commands:

$ mysql -u root -p
mysql> CREATE DATABASE edxapp;
mysql> CREATE USER 'edxapp'@'localhost' IDENTIFIED BY 'password';
mysql> GRANT ALL PRIVILEGES ON edxapp.* TO 'edxapp'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> exit

Replace password with a strong password for the new user.

Step 5: Configure edX

Navigate to the edx-platform directory and copy the lms.env.json.sample and cms.env.json.sample files to lms.env.json and cms.env.json respectively. Update the DATABASES section in both files with the MySQL username and password you created in the previous step.

Step 6: Install edX

Finally, run the following command to install edX:

sudo -H pip install -e .

Step 7: Start edX

Now, you can start edX by running the following commands:

$ cd /edx/app/edxapp/edx-platform
$ make dev.run

Once the installation is complete, you can access edX by visiting http://localhost:8000 in your web browser.

Congratulations! You have successfully installed edX on Debian.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!