Com instal·lar la plataforma d'aprenentatge Moodle a Ubuntu 20.04


Moodle és la plataforma de gestió d'aprenentatge en línia (e-learning) més popular, robusta, gratuïta i de codi obert del món creada per a la web i el mòbil. Ofereix una àmplia gamma d'activitats i eines educatives que permeten a escoles, universitats i institucions relacionades oferir als estudiants una plataforma d'aprenentatge flexible en qualsevol moment i en qualsevol lloc, sense interrupció del seu curs i pla d'estudis.

Algunes de les seves característiques generals inclouen una interfície moderna i fàcil d'utilitzar, un tauler personalitzat, eines i activitats col·laboratives, un calendari tot en un, una gestió còmoda de fitxers, un editor de text senzill i intuïtiu, notificacions i un seguiment del progrés.

És important destacar que Moodle també és molt extensible mitjançant més de mil connectors que admeten activitats addicionals, blocs, temes i molt més.

En aquest article, aprendràs a instal·lar la darrera versió de la plataforma d'aprenentatge de Moodle amb base de dades NGINX i MySQL/MariaDB a Ubuntu 20.04 i versions anteriors.

  • S'ha instal·lat una pila LEMP recentment instal·lada.

Un cop hàgiu instal·lat la pila LEMP al servidor Ubuntu, podeu continuar per configurar Moodle al servidor tal com s'explica a continuació.

En aquesta pàgina

  • Configuració del registre DNS per a l'aplicació Moodle
  • Instal·lació de Moodle al servidor Ubuntu
  • Configuració de NGINX per servir l'aplicació Moodle
  • Completant la instal·lació de Moodle mitjançant l'instal·lador web
  • Activeu HTTPS a l'aplicació Moodle amb Let's Encrypt

1. Perquè els usuaris accedeixin a la vostra instància de Moodle, heu de crear-hi un subdomini, per tant, heu de crear un registre A DNS per aconseguir-ho. Per a aquesta guia, el nostre domini de prova és testprojects.me, de manera que hem de crear un subdomini, per exemple, learning.testprojects.me.

Per tant, inicieu sessió a la consola web del vostre registrador de dominis i accediu a la configuració avançada del vostre domini, feu clic a Afegeix un nou registre de tipus A, un amfitrió hauria d'estar aprenent (o qualsevol paraula que trieu). ), i el valor hauria de ser l'adreça IP pública del vostre servidor Ubuntu.

2. A continuació, heu d'instal·lar les extensions PHP i les biblioteques requerides per Moodle mitjançant el gestor de paquets apt tal com es mostra.

$ sudo apt update
$ sudo apt install php-common php-iconv php-curl php-mbstring php-xmlrpc php-soap php-zip php-gd php-xml php-intl php-json libpcre3 libpcre3-dev graphviz aspell ghostscript clamav

3. A continuació, creeu una base de dades per al vostre sistema Moodle. Inicieu sessió a l'intèrpret d'ordres d'administració de la base de dades MySQL i creeu la base de dades tal com es mostra:

$ sudo mysql

MariaDB [(none)]> CREATE DATABASE moodle;
MariaDB [(none)]> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodleadmin'@'localhost' IDENTIFIED BY '[email ';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;

4. Com s'ha esmentat anteriorment, per a aquesta guia, descarregarem i instal·larem la darrera versió de Moodle (versió 3.9 en el moment d'escriure). Executeu la següent comanda ls per confirmar que el directori moodle existeix a /var/www/html/ tal com es mostra.

$ wget -c https://download.moodle.org/download.php/direct/stable39/moodle-latest-39.tgz
$ sudo tar -zvxf moodle-latest-39.tgz -C /var/www/html/
$ ls /var/www/html/

5. A continuació, configureu els permisos adequats al directori Moodle executant les ordres següents.

$ sudo chown www-data:www-data -R /var/www/html/moodle
$ sudo chmod 775 -R /var/www/html/moodle

6. A continuació, creeu el directori de dades de Moodle, un lloc on Moodle pot desar els fitxers penjats i establir els seus permisos tal com es mostra.

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

7. A continuació, creeu el fitxer de configuració principal de Moodle a partir del fitxer de configuració de mostra proporcionat amb el paquet, obriu-lo.

$ cd /var/www/html/moodle/
$ sudo cp config-dist.php config.php
$ sudo vim config.php

Busqueu la secció de configuració de la base de dades i, a continuació, configureu la base de dades on s'emmagatzemaran totes les dades de Moodle, tal com es mostra a la captura de pantalla següent:

$CFG->dbtype    = 'mariadb';      // 'pgsql', 'mariadb', 'mysqli', 'sqlsrv' or 'oci'
$CFG->dblibrary = 'native';     // 'native' only at the moment
$CFG->dbhost    = 'localhost';  // eg 'localhost' or 'db.isp.com' or IP
$CFG->dbname    = 'moodle';     // database name, eg moodle
$CFG->dbuser    = 'moodleadmin';   // your database username
$CFG->dbpass    = '[email ';   // your database password
$CFG->prefix    = 'mdl_';       // prefix to use for all table names

A més, configureu la ubicació del lloc web de Moodle així com la ubicació del directori de dades de Moodle tal com es mostra.

$CFG->wwwroot   = 'http://learning.testprojects.me';
$CFG->dataroot  = '/var/moodledata';

Deseu el tancament del fitxer. A continuació, configureu NGINX per servir el vostre lloc Moodle tal com es descriu a la secció següent.

8. Perquè NGINX serveixi el vostre lloc Moodle, heu de crear una nova configuració de bloc de servidor sota la configuració de NGINX, al directori /etc/nginx/conf.d/.

$ sudo vim /etc/nginx/conf.d/moodle.conf

Copieu i enganxeu-hi la configuració següent, substituïu learning.testprojects.me pel vostre subdomini. A més, la directiva fastcgi_pass hauria d'apuntar a l'adreça on PHP-FPM accepta sol·licituds FastCGI (comproveu el fitxer /etc/php/7.4/fpm/pool.d/www.conf per a més informació) .

server{
   listen 80;
    server_name learning.testprojects.me;
    root        /var/www/html/moodle;
    index       index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ ^(.+\.php)(.*)$ {
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_index           index.php;
        fastcgi_pass           unix:/run/php/php7.4-fpm.sock;
        include                 /etc/nginx/mime.types;
        include                 fastcgi_params;
        fastcgi_param           PATH_INFO       $fastcgi_path_info;
        fastcgi_param           SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}

Deseu el fitxer i tanqueu-lo.

9. A continuació, comproveu que la configuració de NGINX està bé després de fer els canvis anteriors i, a continuació, reinicieu el servei NGINX amb gràcia.

$ sudo nginx -t
$ sudo systemctl reload nginx

10. Ara obriu un navegador web i navegueu amb el vostre subdomini, per exemple, learning.testprojects.me per accedir a l'instal·lador web de Moodle.

http://learning.testprojects.me

Un cop es carregui la pàgina de benvinguda, llegiu el missatge, feu clic a Continuar.

11. A continuació, l'instal·lador comprovarà si el vostre sistema compleix els requisits, si tot està bé, desplaceu-vos cap avall i feu clic a Continuar per iniciar la instal·lació real dels fitxers i configurar l'esquema de la base de dades.

Tingueu en compte que l'instal·lador mostrarà un avís sobre el lloc que no s'executa amb HTTPS; de moment, ignoreu l'avís. A l'última secció, explicarem com habilitar HTTPS a Moodle mitjançant certificats gratuïts de Let's Encrypt.

Un cop finalitzada la instal·lació, feu clic a Continuar.

12. A continuació, configureu el compte d'administrador del vostre lloc Moodle creant el nom d'usuari, la contrasenya, el nom i cognoms i l'adreça de correu electrònic. A continuació, desplaceu-vos cap avall i feu clic a Actualitza el compte.

13. A continuació, configureu la configuració de la portada del lloc Moodle tal com es mostra a la captura de pantalla següent. A continuació, desplaceu-vos cap avall i feu clic a Actualitza.

14. L'instal·lador web us iniciarà automàticament la sessió al nou lloc de Moodle. Podeu completar el registre del vostre lloc seguint les instruccions de la pantalla.

15. Per protegir el vostre lloc Moodle, heu d'activar HTTPS. Per a aquesta guia, utilitzarem certificats SSL/TLS gratuïts i de confiança de Let's Encrypt. Un altre avantatge d'utilitzar Let's Encrypt és que està automatitzat.

Per tant, torneu al vostre terminal i executeu l'ordre següent per instal·lar el certbot a Ubuntu (una eina gratuïta i de codi obert per utilitzar automàticament els certificats Let's Encrypt per habilitar HTTPS en llocs administrats manualment).

$ sudo snap install --classic certbot

16. A continuació, emet l'ordre següent per obtenir un certificat i que Certbot editi la configuració de NGINX per configurar automàticament el nou certificat.

$ sudo certbot --nginx

17. A continuació, torneu al fitxer de configuració del lloc Moodle.

$ sudo vim /var/www/html/moodle/config.php 

i canvieu l'URL d'HTTP a HTTPS tal com es mostra a la captura de pantalla següent.

$CFG->wwwroot   = 'https://learning.testprojects.me';

18. Finalment, verifiqueu des del navegador que el vostre lloc Moodle s'està executant amb HTTPS.

https://learning.testprojects.me

Això és tot per ara! Aneu a la documentació de Moodle 3.9 per obtenir més informació, opcions de configuració i guia d'ús.