GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Comment installer Moodle sur Ubuntu 20.04

Moodle est un système de gestion de l'apprentissage (LMS) gratuit et open source. Il est écrit en langage de programmation PHP. Moodle est utilisé par de nombreuses écoles, universités et organisations pour une meilleure expérience d'apprentissage.

Moodle fournit gestion de contenu, interface utilisateur conviviale, rapports, questionnaires, commentaires, listes de présence, etc.

Ce guide explique comment configurer votre propre Moodle serveur à partir de zéro sur Ubuntu 20.04 en utilisant le LEMP pile.

Installer la pile LEMP sur Ubuntu

LEMP est une collection de logiciels open source comprenant Linux, Nginx, MySQL/MariaDB et PHP. LEMP est essentiellement une alternative à la pile LAMP avec Nginx comme serveur Web au lieu d'Apache.

Pour Linux, nous travaillons avec Ubuntu 20.04 dans ce guide. Assurez-vous que vous avez le vôtre prêt à l'emploi avec un utilisateur disposant de la fonctionnalité sudo.

Installer Nginx

Nginx est nécessaire pour servir les ressources d'apprentissage sur le Web. Si vous ne disposez pas d'une instance existante du serveur Web NGINX, veuillez suivre les étapes de cet autre guide pour installer NGINX sur Ubuntu 20.04. Une fois que vous avez configuré avec succès NGINX avec votre nom de domaine enregistré, vous pouvez revenir à ce guide et passer aux étapes suivantes ci-dessous.

Installer MySQL/MariaDB

Une base de données est nécessaire pour stocker les données moodle. La base de données la plus couramment utilisée pour Moodle est généralement MySQL/MariaDB ou Postgres.

La table de base de données Moodle comprend des informations sur les utilisateurs, les cours, les informations sur le site et les données pour l'analyse.

Nous allons installer MariaDB qui est un système de gestion de base de données open source dérivé de MySQL.

Exécutez la commande suivante pour installer MariaDB sur Ubuntu :

$ sudo apt-get install mariadb-server mariadb-client

La commande suivante exécutera un script intégré pour configurer et sécuriser votre installation mariadb.

$ sudo mysql_secure_installation

Il est important que vous lisiez attentivement les instructions. Tout d'abord, vous serez invité à entrer le mot de passe actuel de l'utilisateur mysql root. Comme il s'agit d'une nouvelle installation, l'utilisateur root mysql a un mot de passe vide. Appuyez donc sur la touche Entrée pour continuer.

Enter current password for root (enter for none):
OK, successfully used password, moving on…

La deuxième étape consiste à définir le mot de passe root pour mariadb. Entrez y puis tapez votre mot de passe souhaité.

Set root password? [Y/n] y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
… Success!

Ensuite, supprimez les utilisateurs anonymes. Entrez y pour confirmer.

Remove anonymous users? [Y/n] y
… Success!

L'étape suivante concerne la désactivation de la connexion root à distance. Entrez y pour confirmer.

Disallow root login remotely? [Y/n] y
… Success!

Entrez y pour confirmer la suppression de la base de données de test.

Remove test database and access to it? [Y/n] y
Dropping test database…
… Success!
Removing privileges on test database…
… Success! 

La dernière étape consiste à recharger les tables de privilèges afin que vos modifications prennent effet. Entrez o pour confirmer.

Reload privilege tables now? [Y/n] y
… Success!
Cleaning up…
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!

Vous pouvez maintenant vous connecter à mariadb et créer une base de données pour stocker les données moodle. Exécutez la commande ci-dessous et entrez le mot de passe root mariadb lorsque vous y êtes invité.

$ sudo mysql -u root -p

Une fois connecté, exécutez la commande suivante pour créer une base de données.

> CREATE DATABASE moodle;

Ensuite, créez un compte utilisateur pour Moodle dans mariadb comme suit. N'oubliez pas de remplacer moodlesuper et mot de passe avec vos propres valeurs.

> CREATE USER 'moodlesuper'@'localhost' IDENTIFIED BY 'password';

La commande suivante accorde les autorisations nécessaires au compte d'utilisateur nouvellement créé.

> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodlesuper'@'localhost';

Déconnectez-vous de mariadb comme suit.

> quit

Installer PHP

PHP est nécessaire pour traiter dynamiquement les demandes des utilisateurs pour le contenu de Moodle. NGINX fonctionne avec PHP en utilisant PHP-FPM -- c'est-à-dire FastCGI Process Manager.

Installez les composants PHP requis en exécutant la commande ci-dessous.

$ sudo apt-get install php-fpm php-mysql php-xml

Une fois installé, l'étape suivante consiste à configurer NGINX pour transmettre les requêtes PHP à PHP-FPM. Pour ce faire, vous devez modifier le fichier de bloc du serveur NGINX pour votre site Web Moodle. Par exemple, la commande ci-dessous ouvrira le fichier de blocage du serveur pour mon site Web Moodle "cloudindevs.com".

$ sudo nano /etc/nginx/sites-available/cloudindevs

Dans le fichier de blocage du serveur, ajoutez index.php à la ligne commençant par index. Copiez également la directive de configuration suivante et collez-la juste en dessous de la directive d'emplacement existante dans le fichier de blocage de votre serveur.

# pass PHP scripts to FastCGI server
location ~ [^/]\.php(/|$) {
    fastcgi_split_path_info  ^(.+\.php)(/.+)$;
    fastcgi_index            index.php;
    fastcgi_pass             unix:/var/run/php/php7.4-fpm.sock;
    include                  fastcgi_params;
    fastcgi_param   PATH_INFO       $fastcgi_path_info;
    fastcgi_param   SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

Après les modifications, cette partie de votre fichier de bloc de serveur devrait ressembler à ce que vous voyez dans l'image ci-dessous. Les nouveaux ajouts sont marqués en rouge.

Pour tester votre configuration, exécutez la commande ci-dessous pour créer un exemple de fichier index.php dans le répertoire racine de votre site Web moodle. N'oubliez pas de remplacer "cloudindevs.com" par votre propre adresse de site Web.

$ sudo nano /var/www/cloudindevs.com/index.php

Copiez et collez l'exemple de code PHP ci-dessous dans le fichier index.php.

<?php echo 'NGINX is working with PHP-FPM!'; ?>

Enregistrez et fermez le fichier index.php. Visitez votresiteweb.com/index.php dans un navigateur Web et vous devriez voir l'exemple de page ci-dessous.

Pour avoir SSL (https), suivez Nginx avec Let's Encrypt.

Installer Moodle sur Ubuntu

Au moment de la rédaction de ce guide, la dernière version de Moodle est 3.10.1 et peut être téléchargé comme suit.

$ sudo wget https://download.moodle.org/download.php/direct/stable310/moodle-3.10.1.tgz

Ensuite, extrayez le contenu du package téléchargé et placez-le dans le répertoire racine de votre site Web Moodle. Voici un exemple.

$ sudo tar -zxvf moodle-3.10.1.tgz -C /var/www/cloudindevs.com

Il est nécessaire de modifier la propriété et les autorisations sur le dossier Moodle extrait comme suit. Le compte de service NGINX par défaut est www-data .

$ sudo chown -R www-data:www-data /var/www/cloudindevs.com/moodle
$ sudo chmod -R  755 /var/www/cloudindevs.com/moodle

Exécutez les trois commandes suivantes pour créer un répertoire avec les autorisations appropriées pour que Moodle stocke les fichiers et dossiers téléchargés. Le répertoire de données Moodle ne doit pas être accessible sur le Web.

$ sudo mkdir /var/moodledata
$ sudo chown -R www-data:www-data /var/moodledata
$ sudo chmod -R  755 /var/moodledata

Configuration Moodle

Il est maintenant temps de créer le fichier de configuration principal de Moodle. Pour ce faire, changez de répertoire, puis copiez l'exemple de fichier de configuration dans le dossier Moodle extrait en exécutant les commandes ci-dessous.

$ cd /var/www/cloudindevs.com/moodle
$ sudo cp config-dist.php config.php

Ouvrez le fichier config.php pour le modifier.

$ sudo nano config.php

Dans la CONFIGURATION DE LA BASE DE DONNÉES section du fichier config.php, procédez comme suit.

  1. Remplacer pgsql avec mariadb
  2. Remplacer moodle avec le nom de la base de données que vous avez créée lors de la configuration de mariadb
  3. Modifier le nom d'utilisateur au nom d'utilisateur réel de la base de données que vous avez créé précédemment
  4. Modifier le mot de passe à votre mot de passe de base de données

Appuyez sur la flèche vers le bas jusqu'à ce que vous arriviez à EMPLACEMENT DU SITE WEB section du fichier config.php.

Remplacez http://example.com/moodle avec http://votresite.com/moodle

Par exemple, le mien serait 'https://cloudindevs.com/moodle'

Faites défiler vers le bas jusqu'à EMPLACEMENT DES FICHIERS DE DONNÉES section du fichier config.php.

Modifier /home/example/moodledata à votre répertoire de données moodle que vous avez créé précédemment. Le mien serait /var/moodledata

Accéder à l'interface Web de Moodle

À ce stade, vous pouvez ouvrir un navigateur Web et visiter votresite.com/moodle pour terminer l'installation.

Voici ce que j'obtiens lorsque je vais sur « www.cloudindevs.com/moodle » dans un navigateur Web.

Cliquez sur Continuer procéder. Sur la page suivante, vous pouvez rencontrer des erreurs concernant les plugins manquants. Voir un exemple dans l'image ci-dessous.

Pour résoudre les problèmes, cliquez sur doit être installé et activé et suivez les instructions pour installer les extensions requises. Après avoir installé les extensions requises, redémarrez NGINX avec sudo systemctl restart nginx puis rechargez la page Vérifications du serveur pour confirmer si les erreurs ont disparu.

Si les erreurs ont disparu, vous pouvez cliquer sur Continuer pour continuer.

Configurer le compte administrateur principal de Moodle

Après avoir installé avec succès Moodle, une page vous sera présentée pour configurer votre compte administrateur principal. Vous devrez spécifier un nom d'utilisateur, un mot de passe et d'autres informations requises.

En outre, il vous sera demandé de configurer le nom de votre site, le résumé de la page d'accueil, les paramètres de localisation, etc. Lorsque vous avez terminé, cliquez sur Enregistrer les modifications en bas de la page.

Et cela conclut l'installation de Moodle. Voici à quoi ressemble mon nouveau site Web Moodle.

Conclusion

L'apprentissage en ligne a attiré beaucoup d'attention depuis le début de la pandémie de Covid-19 - et c'est un fait. De nombreux établissements d'enseignement créent des plates-formes d'apprentissage en ligne via des systèmes de gestion de l'apprentissage en ligne tels que Moodle.

Dans ce guide, nous avons installé et configuré avec succès un serveur Moodle à partir de zéro sur Ubuntu 20.04. Pour plus d'informations sur l'utilisation et la gestion de votre site Web Moodle, veuillez consulter les documents officiels de Moodle.


Ubuntu
  1. Comment installer MySQL sur Ubuntu 20.04

  2. Comment installer Moodle sur Ubuntu 16.04

  3. Comment installer MySQL sur Ubuntu 18.04

  4. Comment installer Shopware CE sur Ubuntu 18.04

  5. Comment installer MySQL sur Ubuntu 22.04

Comment installer Moodle sur Ubuntu 14.04

Comment installer Moodle sur Ubuntu 15.04

Comment installer Moodle sur Ubuntu 16.04 LTS

Comment installer Go dans Ubuntu 20.04

Comment installer Go sur Ubuntu 22.04

Comment installer MySQL 8.0 sur Ubuntu 18.04