== Environment ==
!! database mariadb (10.5.16-MariaDB) !!
[System] version 10.6.7 is required and you are running 10.5.16 -
環境
インストールした環境は次の通りです。
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.2 LTS
Release: 22.04
Codename: jammy
インストール手順
公式サイトの説明に従ってインストールを進めます。必要なパッケージのインストール
次のパッケージをインストールします。
$sudo apt -y install apache2
$sudo apt -y install php
$sudo apt -y install mariadb-server
$sudo apt -y install php-mysql
$sudo apt -y install php-xml
$sudo apt -y install php-mbstring
$sudo apt -y install php-curl
$sudo apt -y install php-zip
$sudo apt -y install php-gd
$sudo apt -y install php-intl
$sudo apt -y install php-soap
moodleのダウンロードと配置
moodleをダウンロードして、データを/var/www/html/moodleに展開します。
$cd /var/www/html
$sudo tar xvzf moodle-latest-402.tgz
データ用ディレクトリを作成します。
$cd /var/www
$sudo mkdir moodle_files
パーミッションとグループをwww-dataに変更します。
$chown -R www-data:www-data /var/www/html/moodle
$chown -R www-data:www-data /var/www/moodle_files
PHPの設定
php.iniファイルを変更して、max_input_vars = 5000とします。 PHPの設定ファイルは、/etc/php/8.1/apache2/php.iniです。
$sudo vi /etc/php/8.1/apache2/php.ini
;max_input_vars = 1000
max_input_vars = 5000
Apacheの設定
ドキュメントルートが/var/www/htmlになっていることを確認します。
$grep DocumentRoot /etc/apache2/sites-available/000-default.conf
DocumentRoot /var/www/html
Apacheの実行ユーザーとグループを確認します。
$grep RUN /etc/apache2/envvars
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
export APACHE_RUN_DIR=/var/run/apache2$SUFFIX
apache2をリスタートします。
$sudo systemctl restart apache2
MariaDBの設定
moodle用のデータベースとユーザーを作成し、権限を設定します。
$sudo mysql
mysql> CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
mysql> CREATE USER 'moodleuser'@'localhost' IDENTIFIED BY 'yourpassword';
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,CREATE TEMPORARY TABLES,DROP,INDEX,ALTER ON moodle.* TO 'moodleuser'@'localhost';
mysql> FLUSH PRIVILEGES;
mysql> quit
cronの設定
crontabで実行コマンドを設定します。
$sudo crontab -e
* * * * * /usr/bin/php /var/www/moodle/admin/cli/cron.php >/dev/null
Webブラウザからインストールを実行
Webブラウザでmoodleをアクセスします。インストール画面が表示されるので、データベースの設定やAdminユーザーの設定を行なって、インストールを完了します。
例)
http://192.168.0.120/moodle
うまくいかなかった箇所
コマンドラインからのインストール
最初、config-dist.phpをconfig.phpにコピーし、必要な設定を行なった上でコマンドラインからmoodle/admin/cli/install.phpを実行してインストールを行おうとしたのですが、Adminユーザーを作成することができませんでした。コマンドラインからではなく、Webブラウザからmoodleをアクセスすると問題なくインストールが行えました。