Install Gibbon LMS on Ubuntu 20.04

Updated on August 3, 2021
Install Gibbon LMS on Ubuntu 20.04 header image

Introduction

Gibbon is a free and open-source web-based Educational Management System. It is designed to solve problems encountered by teachers and students in an educational setup. It offers flexibility and extensibility with many features such as theme selection. It helps teachers to plan their daily duties such as teaching, assessments, and return work in one streamlined process. In this article, you will learn how to install Gibbon LMS on Ubuntu 20.04 server.

Prerequisites

1. Install Apache, MariaDB and PHP

Install Apache webserver, MariaDB, PHP, and other PHP extensions to your system.

$ sudo apt install apache2 mariadb-server php libapache2-mod-php php-common php-sqlite3 php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-bcmath php-xml php-cli php-zip unzip git -y

2. Configure MariaDB for Gibbon

After installing the LAMP stack to your server, you'll need to make a few changes to configuration files to enable Gibbon to run.

Login into mysql.

$ sudo mysql

Once login, create a database named gibbondb.

CREATE DATABASE gibbondb;

Create a new user gibbon with a password StrongPassword.

CREATE USER 'gibbon'@'localhost' IDENTIFIED BY 'StrongPassword';

Grant all the privileges of gibbondb to user gibbon.

GRANT ALL ON gibbondb.* TO 'gibbon'@'localhost' WITH GRANT OPTION;

Flush the privileges for changes to reflect.

FLUSH PRIVILEGES;

Exit from the MySQL shell.

EXIT;

3. Install Gibbon

Download the latest version of Gibbon. You can download it from its official website.

$ sudo wget https://github.com/GibbonEdu/core/archive/v22.0.00.zip

Unzip the downloaded file.

$ sudo unzip v22.0.00.zip

Create installation directory /var/www/html/gibbon.

$ sudo mkdir /var/www/html/gibbon

Copy the extracted directory to the installation directory /var/www/html/gibbon.

$ sudo cp -r core-22.0.00/* /var/www/html/gibbon

Change the ownership and permission of the installation directory.

$ sudo chown -R www-data:www-data /var/www/html/gibbon/
$ sudo chmod -R 755 /var/www/html/gibbon/

Go to the installation folder.

$ cd /var/www/html/gibbon/

Install composer.

$ sudo apt install composer -y

Run composer.

$ sudo composer install

4. Configure Apache for Gibbon

Edit default Apache virtual host configuration file 000-default.conf.

$ sudo nano /etc/apache2/sites-available/000-default.conf

Replace the existing code with the following code and save the file.

<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html/gibbon

     <Directory /var/www/html/gibbon/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

     <Directory /var/www/html/gibbon/>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*) index.php [PT,L]
    </Directory>
</VirtualHost>

Enable the Apache rewrite module.

$ sudo a2enmod rewrite

Restart the Apache service.

$ sudo systemctl restart apache2

5. Access Gibbon Web Interface

Go to your web browser and access the Gibbon web interface via http://ServerIP. For example:

http://192.0.2.10

More Information

For more information about Gibbon LMS, please see the official documentation.