Kako instalirati Moodle platformu za učenje u Ubuntu 20.04


Moodle je najpopularnija, robusna, besplatna i otvorena platforma za upravljanje učenjem na mreži (e-učenje) na svijetu napravljena za web i mobilne uređaje. Nudi širok raspon aktivnosti i obrazovnih alata koji omogućuju školama, sveučilištima i srodnim institucijama da učenicima ponude fleksibilnu platformu za učenje bilo kada, bilo gdje, bez prekidanja tečaja i kurikuluma.

Neke od njegovih općih značajki uključuju moderno sučelje jednostavno za korištenje, personaliziranu nadzornu ploču, alate i aktivnosti za suradnju, sveobuhvatni kalendar, praktično upravljanje datotekama, jednostavan intuitivni uređivač teksta, obavijesti i praćenje napretka.

Važno je da je Moodle također vrlo proširiv korištenjem preko tisuću dodataka koji podržavaju dodatne aktivnosti, blokove, teme i još mnogo toga.

U ovom ćete članku naučiti kako instalirati najnoviju verziju Moodle platforme za učenje s NGINX i bazom podataka MySQL/MariaDB na Ubuntu 20.04 i starije verzije.

Zahtjevi poslužitelja:

  • Svježe instalirani Ubuntu 20.04 poslužitelj s instaliranim LEMP Stackom.

Nakon što ste instalirali LEMP stog na Ubuntu poslužitelj, možete nastaviti s postavljanjem Moodle na poslužitelju kao što je objašnjeno u nastavku.

Na ovoj stranici

  • Postavljanje DNS zapisa za Moodle aplikaciju
  • Instaliranje Moodlea u Ubuntu poslužitelj
  • Konfiguriranje NGINX-a za posluživanje Moodle aplikacije
  • Dovršavanje instalacije Moodlea putem web programa za instalaciju
  • Omogućite HTTPS na Moodle aplikaciji koristeći Let’s Encrypt

Postavljanje DNS zapisa za Moodle aplikaciju

1. Da bi korisnici mogli pristupiti vašoj Moodle instanci, trebate stvoriti poddomenu za nju, stoga morate stvoriti DNS A zapis kako bi se to postiglo. Za ovaj vodič, naša testna domena je testprojects.me, pa moramo stvoriti poddomenu, na primjer, learning.testprojects.me.

Dakle, prijavite se na web konzolu registrara domene i pristupite naprednim postavkama svoje domene, kliknite Dodaj novi zapis tipa A, host bi trebao učiti (ili bilo koja riječ po vašem izboru), a vrijednost bi trebala biti javna IP adresa vašeg Ubuntu poslužitelja.

Instaliranje Moodlea u Ubuntu poslužitelj

2. Zatim trebate instalirati PHP ekstenzije i biblioteke koje zahtijeva Moodle koristeći apt upravitelj paketa kao što je prikazano.

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. Zatim stvorite bazu podataka za svoj Moodle sustav. Prijavite se u administrativnu ljusku baze podataka MySQL i kreirajte bazu podataka kao što je prikazano:

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 'Secur3P@zzwd';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> quit;

4. Kao što je ranije spomenuto, za ovaj ćemo vodič preuzeti i instalirati najnoviju verziju Moodle (verzija 3.9 u vrijeme pisanja). Pokrenite sljedeću naredbu wget da preuzmete Moodle paket i upotrijebite naredbu tar da ga izdvojite. Zatim upotrijebite naredbu ls da potvrdite da moodle direktorij postoji pod /var/www/html/ kao što je prikazano.

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. Zatim postavite odgovarajuće dozvole za Moodle direktorij pokretanjem sljedećih naredbi.

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

6. Zatim kreirajte Moodle direktorij podataka, mjesto gdje Moodle može spremati učitane datoteke i postaviti svoje dozvole kao što je prikazano.

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

7. Zatim kreirajte glavnu konfiguracijsku datoteku za Moodle iz uzorka konfiguracijske datoteke koju ste dobili uz paket, otvorite je.

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

Pronađite odjeljak konfiguracije baze podataka, zatim konfigurirajte bazu podataka u kojoj će biti pohranjeni svi Moodle podaci, kao što je prikazano na sljedećoj snimci zaslona:

$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    = 'Secur3P@zzwd';   // your database password
$CFG->prefix    = 'mdl_';       // prefix to use for all table names

Također, konfigurirajte lokaciju Moodle web stranice kao i lokaciju Moodle podatkovnog imenika kao što je prikazano.

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

Spremite i zatvorite datoteku. Zatim konfigurirajte NGINX za poslužitelj vaše Moodle stranice kao što je opisano u sljedećem odjeljku.

Konfiguriranje NGINX-a za posluživanje Moodle aplikacije

8. Da bi NGINX poslužio vašu Moodle stranicu, morate stvoriti novu konfiguraciju bloka poslužitelja pod NGINX konfiguracijom, u direktoriju /etc/nginx/conf.d/.

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

Kopirajte i zalijepite sljedeću konfiguraciju u nju, zamijenite learning.testprojects.me svojom poddomenom. Osim toga, direktiva fastcgi_pass trebala bi upućivati na adresu na kojoj PHP-FPM prihvaća FastCGI zahtjeve (provjerite /etc/php/7.4/fpm/pool.d/www.conf datoteka za više informacija).

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;
}
}

Spremite datoteku i zatvorite je.

9. Zatim provjerite je li konfiguracija NGINX u redu nakon što izvršite gore navedene promjene, a zatim elegantno ponovno pokrenite uslugu NGINX.

sudo nginx -t
sudo systemctl reload nginx

Dovršavanje instalacije Moodlea putem web programa za instalaciju

10. Sada otvorite web-preglednik i krećite se koristeći svoju poddomenu, na primjer, learning.testprojects.me za pristup Moodle web-instalacijskom programu.

http://learning.testprojects.me

Nakon što se stranica dobrodošlice učita, pročitajte poruku i kliknite Nastavi.

11. Zatim će instalacijski program provjeriti ispunjava li vaš sustav zahtjeve, ako je sve u redu, pomaknite se prema dolje i kliknite Nastavi za početak stvarne instalacije datoteka i postavljanja baze podataka shema.

Imajte na umu da će instalacijski program prikazati upozorenje da web mjesto ne radi na HTTPS, za sada zanemarite upozorenje. U posljednjem ćemo odjeljku pokriti kako omogućiti HTTPS na Moodleu pomoću besplatnih Let’s Encrypt certifikata.

Kada instalacija završi, kliknite na Nastavi.

12. Zatim konfigurirajte administratorski račun svoje Moodle stranice kreiranjem korisničkog imena računa, lozinke, imena i prezimena i adrese e-pošte. Zatim se pomaknite prema dolje i kliknite Ažuriraj račun.

13. Zatim konfigurirajte postavke naslovnice stranice Moodle kao što je prikazano na sljedećoj snimci zaslona. Zatim se pomaknite prema dolje i kliknite Ažuriraj.

14. Web instalacijski program će vas automatski prijaviti na novu Moodle stranicu. Možete dovršiti registraciju svoje stranice slijedeći upute na ekranu.

Postavljanje HTTPS-a na Moodle aplikaciji pomoću Let’s Encrypt

15. Kako biste zaštitili svoju Moodle stranicu, trebate omogućiti HTTPS. Za ovaj vodič koristit ćemo Let’s Encrypt besplatne i pouzdane SSL/TLS certifikate. Još jedna prednost korištenja Let’s Encrypt je to što je automatiziran.

Dakle, vratite se na svoj terminal i pokrenite sljedeću naredbu da instalirate certbot na Ubuntu (besplatan alat otvorenog koda za automatsku upotrebu Let’s Encrypt certifikata za omogućavanje HTTPS-a na web-mjestima kojima se ručno upravlja).

sudo snap install --classic certbot

16. Zatim izdajte sljedeću naredbu za dobivanje certifikata i neka Certbot uredi vašu NGINX konfiguraciju kako bi automatski konfigurirao novi certifikat.

sudo certbot --nginx

17. Zatim se vratite na konfiguracijsku datoteku stranice Moodle.

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

i promijenite URL iz HTTP u HTTPS kao što je prikazano na sljedećoj snimci zaslona.

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

18. Konačno, provjerite iz preglednika da vaša Moodle stranica sada radi na HTTPS.

https://learning.testprojects.me

To je sve za sada! Idite na Moodle 3.9 dokumentaciju za više informacija, mogućnosti konfiguracije i vodič za korištenje.