Yêu cầu
Chuẩn bị máy ảo với hệ điều hành CentOS 7 với cấu hình:
- CPU: 2
- RAM: 2 GB
- Disk: 100 GB
- Network: 1 interface với IP public
Máy ảo có thể đã có dịch vụ BigBlueButton
Cài đặt Moodle
Bước 1: Chuẩn bị
1. Đặt Hostname
hostnamectl set-hostname nhmoodle |
2. Cập nhật OS và cài đặt các gói cần thiết
apt-get update -y |
Bước 2. Cài đặt dịch vụ NGINX
apt install nginx -y systemctl stop nginx.service systemctl start nginx.service systemctl enable nginx.service |
Bước 3. Cài đặt dịch vụ MariaDB
apt install mariadb-server mariadb-client -y systemctl stop mysql.service systemctl start mysql.service systemctl enable mysql.service |
3.1. Chỉnh sửa cấu hình mariadb
Thêm các thông số sau trong file : /etc/mysql/mariadb.conf.d/50-server.cnf
[mysqld] default_storage_engine = innodb innodb_file_per_table = 1 innodb_file_format = Barracuda innodb_large_prefix = 1 |
Khởi động lại MariaDB
systemctl restart mysql.service |
3.2. Tạo mới Database
Thêm Database moodle.
mysql -u root CREATE DATABASE moodle; CREATE USER 'moodleuser' @ 'localhost' IDENTIFIED BY 'Cloud365a@123' ; GRANT ALL PRIVILEGES ON moodle.* TO 'moodleuser' @ 'localhost' IDENTIFIED BY 'Cloud365a@123' WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT; |
Bước 4. Cài đặt PHP
4.1. Thêm repo để cài đặt PHP
apt-get install software-properties-common LC_ALL=C.UTF- 8 add-apt-repository ppa:ondrej/php |
4.2. Cập nhật và cài đặt PHP
apt update -y apt install php7. 1 -fpm php7. 1 -common php7. 1 -mbstring php7. 1 -xmlrpc php7. 1 -soap php7. 1 -gd php7. 1 -xml php7. 1 -intl php7. 1 -mysql php7. 1 -cli php7. 1 -mcrypt php7. 1 -ldap php7. 1 -zip php7. 1 -curl -y |
4.3. Chỉnh sửa các tham số sau tại file /etc/php/7.1/fpm/php.ini
file_uploads = On allow_url_fopen = On memory_limit = 256M upload_max_filesize = 64M max_execution_time = 360 cgi.fix_pathinfo = 0 |
Bước 5 . Cài đặt Moodle
5.1. Tải source code Moodle
cd yum install -y wget wget https: //download.moodle.org/download.php/direct/stable38/moodle-latest-38.tgz sudo tar -zxvf moodle-latest- 38 .tgz -C /var/www/html |
5.2. Tạo thư mục chúa dữ liệu
mkdir /var/www/html/moodledata chown -R www-data:www-data /var/www/html/moodle/ chmod -R 755 /var/www/html/moodle/ chown www-data:www-data /var/www/html/moodledata |
5.3. Cấu hình file virtualhost nginx :
vi /etc/nginx/sites-available/moodle server { listen 8080 ; listen [::]: 80 ; root /var/www/html/moodle; index index.php index.html index.htm; server_name example.com www.example.com; location / { try_files $uri $uri/ = 404 ; } location /dataroot/ { internal; alias /var/www/html/moodledata/; } location ~ [^/]\.php(/|$) { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7. 1 -fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } |
5.4 Kiểm tra và kích hoạt moodle
ln -s /etc/nginx/sites-available/moodle /etc/nginx/sites-enabled/ systemctl restart nginx.service |
5.5. Cài đặt Moodle
sudo /usr/bin/php /var/www/html/moodle/admin/cli/install.php \ --chmod= 2777 --lang=en \ --wwwroot=http: //IP-MAY-AO\ --dataroot=/var/www/html/moodledata \ --dbtype=mariadb --dbhost=localhost --dbname=moodle \ --dbuser=moodleuser --dbpass=Cloud365a @123 \ --fullname=MoodleNH --shortname=MNH \ --adminuser=admin --adminpass=Cloud365a @123 \ --adminemail=cloud365 @nhanhoa .com \ --agree-license |
Lưu ý:
- wwwroot: Địa chỉ Moodle, thay IP-MAY-AO bằng IP thực tế.
- adminuser: Tài khoản quản trị
- adminpass: Mật khẩu tài khoản quản trị
- adminemail: Email quản trị
- Nên xem log thao tác trước khi thực hiện
Lưu ý: Xem log thao tác tại đây
5.6. Sử dụng Moodle
sudo chmod o+r /var/www/html/moodle/config.php |
Restart nginx
systemctl restart nginx.service |
Truy cập IP với port 8080 : http://IP-MAY-AO:8080
Kiểm tra và dùng Moodle.