linux sysadmin installs moodle lms on ubuntu server

როგორ დააინსტალიროთ Moodle 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.

სანამ დაიწყებ

შეამოწმეთ ჩვენი Moodle-ის ჰოსტინგის სერვისი საზოგადოების გამოცემა. შეგიძლიათ დაიწყოთ LMS-ის გამოყენება დაინსტალირების გარეშე!

წინასწარი მოთხოვნები

ამ სახელმძღვანელოში მაგალითებისთვის ჩვენ გამოვიყენებთ დომენს moodle.example.org, შეცვალეთ იგი თქვენი საკუთარი დომენის სახელით.

Ubuntu სერვერის მომზადება Moodle ინსტალაციისთვის

განაახლეთ სისტემა

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

დააინსტალირეთ Apache, PHP-8.1, MariaDB MySQL სერვერი

შემდეგი დააინსტალირეთ Moodle dependencies. ჩვენ უნდა დავაინსტალიროთ Apache ვებ სერვერი, PHP 8.1, MariaDB SQL სერვერი, ფოსტის სერვერი და Moodle-ის მიერ მოთხოვნილი PHP გაფართოებების სია.

$ 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

ინსტალაციის დასრულების შემდეგ გაუშვით Apache ვებ სერვერი.

$ sudo systemctl start apache2 
$ sudo systemctl enable apache2

კონფიგურაცია Apache VirtualHost და PHP-FPM

ჩვენ ვიმუშავებთ Moodle 4.2-ზე Apache-ზე და PHP-FPM-ზე. შემდეგ ეტაპზე ჩვენ დავაკონფიგურირებთ PHP-FPM Apache-სთვის.

1. გაუშვით PHP-FPM სერვისი და ჩართეთ ის ჩატვირთვისას.

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

2. Apache-თან PHP-FPM გამოსაყენებლად უნდა ჩართოთ proxy_fcgi და proxy მოდულები.

sudo a2enmod proxy_fcgi proxy

3. შექმენით Apache კონფიგურაციის ფაილი Moodle-სთვის.

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

შეიყვანეთ შემდეგი კონფიგურაცია moodle.conf-ში. ჩანაცვლება სერვერის სახელი, DocumentRoot, დირექტორია თქვენი ღირებულებებით.

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

შეინახეთ და დახურეთ ფაილი CTRL X-ით, შემდეგ Y, შემდეგ Enter-ით.

4. ჩართეთ ახალი ვირტუალური ჰოსტი და გადატვირთეთ 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

შექმენით მონაცემთა ბაზა და მონაცემთა ბაზის მომხმარებელი

1. გაუშვით და ჩართეთ MariaDB SQL სერვერი

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

2. შექმენით MySQL მომხმარებელი და მონაცემთა ბაზა

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;

Apache, PHP და MySQL კონფიგურაციის შემდეგ, შეგვიძლია გავაგრძელოთ moodle კოდის დაყენება.

დააინსტალირე Moodle Code

1. შექმენით მთავარი დირექტორია Moodle საიტისა და საჯარო დირექტორიასთვის

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

2. ჩამოტვირთეთ Moodle-ის უახლესი კოდი და ამოიღეთ იგი საჯარო დირექტორიაში.

შეგიძლიათ ჩამოტვირთოთ უახლესი moodle-დან 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”

გაუშვით ინსტალაცია ბრაუზერში

სანამ ამ საბოლოო საფეხურზე გადადგებით, თქვენ უნდა მიუთითოთ თქვენი დომენის სახელი თქვენი სერვერის IP მისამართზე. როდესაც DNS არის კონფიგურირებული, თქვენ შეგიძლიათ გაუშვათ Moodle ინსტალაცია ბრაუზერში.

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
ინსტალაციის დროს moodle-ის ენის არჩევა

 

3. დაადასტურეთ ბილიკები

შემდეგ ეტაპზე დაადასტურეთ, რომ ვებ მისამართი, moodle დირექტორია და მონაცემთა დირექტორია სწორია. მონაცემთა დირექტორია აკლდა ჩვენს ინსტალაციას, ამიტომ ჩვენ შევქმენით იგი ამ ეტაპზე.

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

confirm web address, moodle directory, data directory

4. აირჩიეთ მონაცემთა ბაზის სერვერი

ჩვენ ვიყენებთ MariaDB ამ სახელმძღვანელოსთვის. აირჩიეთ MariaDB ჩამოსაშლელი მენიუდან.

choose MariaDB from dropdown

5. შეიყვანეთ მონაცემთა ბაზის პარამეტრები

შეიყვანეთ მონაცემთა ბაზის სახელი, მონაცემთა ბაზის მომხმარებელი და პაროლი, რომლებიც ადრე შევქმენით.

input database settings

6. შექმენით 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. ლიცენზიის მიღება

თქვენ უნდა წაიკითხოთ და დაეთანხმოთ Moodle-ის სალიცენზიო ხელშეკრულებას ამ ეტაპზე.

8. გაიარეთ სერვერის შემოწმება

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. დააკონფიგურირეთ თქვენი მთავარი ადმინისტრატორის ანგარიში

ამ ეტაპზე თქვენ უნდა დააკონფიგურიროთ ადმინისტრატორის ანგარიში. შეიყვანეთ ადმინისტრატორის მომხმარებლის სახელი, პაროლი და სხვა საჭირო დეტალები.

10. შეიყვანეთ საიტის სახლის პარამეტრები

დააკონფიგურირეთ საიტის სახელი, საიტის მოკლე სახელი, საიტის მთავარი რეზიუმე და სხვა ინფორმაცია.

 

configure moodle site settings

შექმენით თქვენი პირველი კურსი!

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