linux sysadmin installs moodle lms on ubuntu server

Ako nainštalovať Moodle na server Ubuntu 22.04 | 20.04

Moodle is one of the best learning management systems available. It’s an open software, released under the open source ‘GNU General Public License’ which makes it highly flexible and customizable. In this guide you will learn how to install Moodle on Ubuntu server 20.04/22.04.

We are installing Moodle on a brand new, clean Ubuntu server with no software or data on it. If your server has data on it - make data backup first. Author is not responsible for possible data loss.

Skôr než začnete

Pozrite si naše hostingová služba pre Moodle komunitné vydanie. LMS môžete začať používať bez toho, aby ste ho museli inštalovať!

Predbežné požiadavky

  • Nainštalujte a VPS server s Ubuntu 22.04 na ňom
  • Získajte plnú kvalifikáciu názov domény pointing to your server’s IP address, such as “moodle.example.org”

Pre príklady v tejto príručke budeme používať doménu moodle.example.org, zmeňte ho na svoj vlastný názov domény.

Príprava servera Ubuntu na inštaláciu Moodle

Aktualizujte systém

First thing first – updating the system. To get started connect to your server via SSH. Then run “apt update” and “apt upgrade” commands to update system packages to the latest version.

$ sudo apt update && apt upgrade -y

executing apt update and apt upgrade commands to update Ubuntu server before proceed to moodle installation

Nainštalujte Apache, PHP-8.1, MariaDB MySQL server

Ďalej nainštalujte závislosti Moodle. Potrebujeme nainštalovať webový server Apache, PHP 8.1, server MariaDB SQL, poštový server a zoznam rozšírení PHP požadovaných Moodle.

$ sudo apt install apache2 php8.1 mariadb-server postfix 
$ sudo apt install php8.1-mysql php8.1-fpm php8.1-iconv php8.1-mbstring php8.1-curl php8.1-tokenizer php8.1-xmlrpc php8.1-soap php8.1-ctype php8.1-zip php8.1-gd php8.1-simplexml php8.1-xml php8.1-intl

Po dokončení inštalácie spustite webový server apache.

$ sudo systemctl start apache2 
$ sudo systemctl enable apache2

Nakonfigurujte Apache VirtualHost a PHP-FPM

Budeme používať Moodle 4.2 na Apache a PHP-FPM. V ďalšom kroku nakonfigurujeme PHP-FPM pre Apache.

1. Spustite službu PHP-FPM a povoľte ju pri zavádzaní systému.

$ sudo systemctl start php8.1-fpm
$ sudo systemctl enable php8.1-fpm

2. Aby sme mohli používať PHP-FPM s Apache, musíme povoliť proxy_fcgi a proxy moduly.

sudo a2enmod proxy_fcgi proxy

3. Vytvorte konfiguračný súbor Apache pre Moodle.

$ sudo nano /etc/apache2/sites-available/moodle.conf

Zadajte nasledujúcu konfiguráciu do moodle.conf. Nahradiť ServerName, DocumentRoot, Adresár so svojimi hodnotami.

<VirtualHost *:80>
ServerName moodle.example.org
ServerAlias www.moodle.example.org
DocumentRoot /home/moodle/public_html

<Directory /home/moodle/public_html>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>

<FilesMatch \.php$>
SetHandler "proxy:unix:/run/php/php8.1-fpm.sock|fcgi://localhost/"
</FilesMatch>

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

Uložte a zatvorte súbor pomocou CTRL X, potom Y a potom Enter.

4. Povoľte nový virtuálny hostiteľ a znova načítajte webový server Apache.

$ a2ensite moodle
$ systemctl reload apache2

5. Also it’s nice to have a rewrite and SSL modules enabled

# a2enmod rewrite
# a2enmod ssl
# systemctl restart apache2

Vytvorte databázu a používateľa databázy

1. Spustite a povoľte server MariaDB SQL

root@moodle-lms-install:~# systemctl start mariadb 
root@moodle-lms-install:~# systemctl enable mariadb

2. Vytvorte MySQL užívateľa a databázu

root@moodle-lms-install:~# mysql
MariaDB [(none)]> create database moodle_dev;
MariaDB [(none)]> grant all privileges on moodle_dev.* to moodle_user@localhost identified by 'Change_to_Strong_SQL_Password';
MariaDB [(none)]> flush privileges;

Keď máme nakonfigurované Apache, PHP a MySQL, môžeme pokračovať v inštalácii kódu Moodle.

Nainštalujte kód Moodle

1. Vytvorte domovský adresár pre stránku Moodle a verejný adresár

$ useradd --create-home -s /bin/sh moodle
$ mkdir -p /home/moodle/public_html
$ chmod 711 /home/moodle

2. Stiahnite si najnovší Moodle kód a rozbaľte ho do verejného adresára.

Najnovšiu verziu Moodle si môžete stiahnuť z https://download.moodle.org/releases/latest/. Get the code and upload it into the public directory. In our case the directory is “/home/moodle/public_html”

Spustite inštaláciu v prehliadači

Predtým, ako pristúpite k tomuto poslednému kroku, musíte nasmerovať názov svojej domény na adresu IP vášho servera. Po nakonfigurovaní DNS môžete spustiť inštaláciu Moodle v prehliadači.

1. Open your browser and navigate to your Moodle’s site domain/sub-domain. You should see Moodle Installation page.

2. Choose website’s language. We will keep English.

choosing a language of moodle during installation
výber jazyka Moodle počas inštalácie

 

3. Potvrďte cesty

V ďalšom kroku potvrďte, že webová adresa, adresár Moodle a adresár s údajmi sú správne. V našej inštalácii chýbal dátový adresár, preto sme ho vytvorili v tomto kroku.

# mkdir /home/moodle/moodledata
# chown www-data:www-data /home/moodle/moodledata

confirm web address, moodle directory, data directory

4. Vyberte databázový server

Pre túto príručku používame MariaDB. Z rozbaľovacej ponuky vyberte MariaDB.

choose MariaDB from dropdown

5. Zadajte nastavenia databázy

Zadajte názov databázy, používateľa databázy a heslo, ktoré sme vytvorili predtým.

input database settings

6. Vytvorte súbor config.php

After entering database settings and clicking “Next” a config.php file will be generated. Copy content of the file and create “config.php” in the root moodle directory (/home/moodle/public_html in this example).

7. Prijmite licenciu

V tomto kroku si musíte prečítať a prijať licenčnú zmluvu Moodle.

8. Prejdite kontrolou servera

Most of the checks passed in our installation. We only had to change “max_input_vars” from its default value to 5000.

$ nano /etc/php/8.1/fpm/php.ini
$ systemctl reload php8.1-fpm

fix max_input_vars error during moodle installation

9. Nakonfigurujte svoj hlavný administrátorský účet

V tomto kroku by ste mali nakonfigurovať účet správcu. Zadajte používateľské meno správcu, heslo a ďalšie požadované údaje.

10. Zadajte domovské nastavenia lokality

Nakonfigurujte názov lokality, krátky názov lokality, súhrn domovskej stránky lokality a ďalšie informácie.

 

configure moodle site settings

Vytvorte si svoj prvý kurz!

After few final clicks you will see the LMS dashboard and Calendar. Proceed to “My Courses” tab and create your first Moodle course! Well done!

my courses tab in fresh installed moodle site