Moodleインストール · 1 min read · Nov 02, 2025
Ubuntu 24.04サーバーにMoodle LMSをインストールする方法

Moodleは、教育機関がオンラインコースを作成し、コンテンツを管理し、協働学習を促進するために世界中で使用されている人気のオープンソースプラットフォームです。UbuntuでMoodleを実行することは、Ubuntuの安定性、セキュリティ、および幅広いソフトウェアパッケージのサポートにより、一般的な選択肢です。このプロセスには、WebサーバーとしてのApacheまたはNginx、データベースとしてのMySQLまたはPostgreSQL、スクリプト言語としてのPHPなどの必要なコンポーネントのインストールが含まれ、これらはすべてUbuntuで十分にサポートされています。このセットアップにより、教育機関は特定の教育ニーズに合わせてカスタマイズ可能な堅牢でスケーラブルなオンライン学習環境を作成できます。
このチュートリアルでは、Ubuntu 24.04サーバーにMoodleをインストールする方法を示します。LAMPスタックでMoodleをインストールし、その後、UFWとCertbotおよびLetsencryptを使用してMoodleをHTTPSで保護します。
前提条件
始める前に、以下のものを用意してください:
- Ubuntu 24.04サーバー。
- 管理者権限を持つ非ルートユーザー。
- サーバーIPアドレスにポイントされたドメイン名。
- UFWファイアウォールが稼働中であること。
依存関係のインストール
MoodleはPHPで書かれたオープンソースの学習プラットフォームです。Moodleをインストールするには、Apache/Nginx、MySQL/MariaDB/PostgreSQL、およびPHPが必要です。このセクションでは、UbuntuにLAMPスタック(Linux、Apache、MariaDB、PHP)をインストールし、その上にMoodleをセットアップします。
まず、以下のコマンドを実行してUbuntuパッケージインデックスを更新します。
sudo apt update
次に、以下のコマンドを実行してLAMPスタック(Apache、MariaDB、PHP)の依存関係をインストールします。インストールを確認するために「Y」と入力してください。
sudo apt install apache2 mariadb-server php-cli php-intl php-xmlrpc php-soap php-mysql php-zip php-gd php-tidy php-mbstring php-curl php-xml php-pear php-bcmath libapache2-mod-php
インストールが完了したら、以下のコマンドでApacheサービスのステータスを確認します。
sudo systemctl is-enabled apache2
sudo systemctl status apache2以下のようにApacheウェブサーバーが実行中であることが確認できます。

以下のコマンドでMariaDBデータベースサーバーを確認します。MariaDBサーバーが実行中であることが確認できます。
sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
最後に、以下のコマンドでPHPのバージョンと有効な拡張機能を確認します。
php -v
php -mPHP 8.3がUbuntuサーバーにインストールされていることが確認できます。

MariaDBサーバーの設定
依存関係がインストールされたら、Moodleに必要なデフォルトのMariaDBストレージエンジンを「InnoDB」に変更する必要があります。これは、MariaDBサーバーの設定ファイルを編集することで行えます。その後、’ mariadb_secure_installation ‘ユーティリティを使用してMariaDBサーバーのデプロイを保護します。
以下のコマンドでMariaDBサーバーの設定ファイル「/etc/mysql/mariadb.conf.d/50-server.cnf」を’nano’エディタで開きます。
sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf以下の設定を「[mysqld]」セクションの下に追加します。これにより、デフォルトのストレージエンジンが「innodb」に変更されます。
innodb_file_format = Barracuda
default_storage_engine = innodb
innodb_large_prefix = 1
innodb_file_per_table = 1ファイルを保存してエディタを終了します。
次に、以下の「systemctl」コマンドを実行してMariaDBサーバーを再起動し、変更を適用します。
sudo systemctl restart mariadb最後に、以下の「mariadb_secure_installation」コマンドを実行してMariaDBのrootユーザーを設定し、デプロイを保護します。
sudo mariadb_secure_installationこのプロセスの中で、以下の質問がされます:
- rootパスワードなしのデフォルトのMariaDBサーバーインストールの場合、パスワードを尋ねられたときにENTERを押します。
- MariaDBのrootユーザーのローカル認証はデフォルトで保護されているため、認証方法を「unix_socket」に変更するように求められたら「n」と入力します。
- 新しいMariaDBのrootパスワードを作成するために「Y」と入力します。その後、MariaDBのrootユーザーの強力なパスワードを入力し、再度入力します。
- MariaDBのrootユーザーのリモート認証を無効にするように求められたら、「Y」と入力して同意します。
- デフォルトのMariaDBサーバーインストールには「test」というデータベースがあり、匿名ユーザーがアクセスできるようになっています。デフォルトのデータベース「test」を削除し、匿名特権を削除するために、両方の設定に「Y」と入力します。
- 最後に、テーブル特権を再読み込みすることを確認するために「Y」と入力します。
データベースとユーザーの作成
MariaDBサーバーの設定が完了したので、’mariadb’クライアントを使用して新しいデータベースとユーザーを作成します。
以下の’mariadb’クライアントコマンドでMariaDBサーバーにログインします。プロンプトが表示されたらMariaDBのrootパスワードを入力します。
sudo mariadb -u root -p次に、以下のクエリを実行して新しいデータベース「moodle」、ユーザー「moodle」を作成し、パスワードを自分の情報に変更します。
CREATE DATABASE moodle DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
GRANT ALL ON moodle.* TO 'moodle'@'localhost' IDENTIFIED BY "MoodlePassw0rd";
FLUSH PRIVILEGES;
QUIT
PHPの設定
このセクションでは、PHP設定「php.ini」を編集し、Moodleに必要なデフォルト値を変更します。
以下のコマンドでPHP設定「/etc/php/8.3/apache2/php.ini」を’nano’エディタで開きます。
sudo nano /etc/php/8.3/apache2/php.ini以下のようにデフォルト設定を変更します。「memory_limit」と「date_timezone」オプションを自分の情報に合わせて調整してください。
memory_limit = 256M
upload_max_filesize = 60M
max_execution_time = 300
date.timezone = Europe/Amsterdam
max_input_vars = 5000完了したら、ファイルを保存して終了します。
最後に、以下のコマンドを実行してApacheウェブサーバーを再起動し、PHPへの変更を適用します。
sudo systemctl restart apache2Moodleソースコードのダウンロード
この時点で、LAMPスタックをインストールして設定しました。Moodleのソースコードをダウンロードし、Moodleインストールディレクトリを設定しましょう。
「/var/www」ディレクトリに移動し、以下の「wget」コマンドを使用してMoodleソースコードをダウンロードします。最新バージョンのリンクを取得するためにMoodleダウンロードページを訪問してください。この場合、最新の安定版Moodle 40.4をダウンロードします。
cd /var/www
wget https://download.moodle.org/download.php/direct/stable404/moodle-latest-404.tgzMoodleがダウンロードされたら、以下の「tar」コマンドで抽出します。Moodleのソースコードは「/var/www/moodle」ディレクトリに利用可能になります。
tar xvf moodle-latest-404.tgz最後に、以下のコマンドを実行して新しいデータディレクトリ「/var/www/moodledata」を作成し、Moodleディレクトリの所有権を「www-data」ユーザーに変更し、Moodleとデータディレクトリの両方が「www-data」ユーザーによって書き込み可能であることを確認します。
sudo mkdir -p /var/www/moodledata
sudo chown -R www-data:www-data /var/www/moodle /var/www/moodledata
sudo chmod u+rwx /var/www/moodle /var/www/moodledataApache仮想ホストの設定
Moodleがダウンロードされたので、Moodleを実行するための新しいApache仮想ホストファイルを作成します。ドメインが準備され、UbuntuサーバーのIPアドレスに解決されていることを確認してください。
まず、以下の「a2enmod」コマンドを実行して「rewrite」モジュールを有効にします。
sudo a2enmod rewrite以下の「nano」エディタで新しいApache仮想ホストファイル「/etc/apache2/sites-available/moodle.conf」を作成します。
sudo nano /etc/apache2/sites-available/moodle.conf以下の設定を挿入し、ドメイン名を自分の情報に変更してください。
DocumentRoot /var/www/moodle/
ServerName moodle.howtoforge.local
ServerAdmin [email protected]
Options +FollowSymlinks
AllowOverride All
Require all granted
ErrorLog /var/log/apache2/moodle_error.log
CustomLog /var/log/apache2/moodle_access.log combined
ファイルを保存してエディタを終了します。
次に、以下のコマンドを実行して「moodle.conf」ファイルを有効にし、Apacheの構文を確認します。正しいApacheの構文がある場合、「Syntax is OK」という出力が表示されます。
sudo a2ensite moodle.conf
sudo apachectl configtest最後に、以下の「systemctl」コマンドを実行してApacheを再起動し、変更を適用します。
sudo systemctl restart apache2UFWでMoodleを保護する
このステップでは、UFW(Uncomplicated Firewall)を通じてHTTPおよびHTTPSプロトコルを開きます。開始する前にUFWが稼働していることを確認してください。
以下のコマンドを実行してUFWで「Apache Full」プロファイルを有効にします。これにより、HTTPおよびHTTPSトラフィックが許可されます。
sudo ufw allow 'Apache Full'次に、以下のコマンドでUFWの有効なルールのリストを確認します。「Apache Full」プロファイルが有効になっていることが確認できます。
sudo ufw statusHTTPSでMoodleを保護する
ファイアウォールに加えて、SSL/TLS証明書を生成し、HTTPSでMoodleを保護します。このセクションでは、CertbotとLetsencryptを通じてMoodleのHTTPSを実装します。Moodleをローカルにインストールしている場合は、これをスキップしてください。
以下のコマンドで「certbot」および「python3-certbot-apache」パッケージをインストールします。
sudo apt install certbot python3-certbot-apache -yインストールが完了したら、以下の「certbot」コマンドを実行してMoodleのSSL/TLS証明書を生成します。ドメイン名とメールアドレスを自分の情報に変更してください。
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d moodle.howtoforge.localプロセスが完了すると、SSL証明書は「/etc/letsencrypt/live/domain.com」ディレクトリに保存され、Moodleのインストールは自動的にHTTPSで保護されるはずです。
Moodleのインストール
https://moodle.howtoforge.local/のようなMoodleのドメイン名にアクセスすると、インストールウィザードが表示されます。
デフォルトの言語を選択し、次へをクリックします。

Moodleのデータディレクトリ「/var/www/moodledata」を入力します。

データベースドライバーとしてMariaDBを選択します。

MariaDBデータベースとユーザーの詳細を入力します。

著作権通知を確認するために続行をクリックします。

サーバーチェックセクションで、環境が準備できていることを確認します。

これでMoodleのインストールが処理されます。

インストールが完了したら、新しい管理ユーザー、メール、およびMoodleのパスワードを入力します。

これで、以下のようなMoodleダッシュボードが表示されます。

結論
おめでとうございます!Ubuntu 24.04サーバーにMoodleのインストールが完了しました。LAMPスタック(Linux、Apache、MariaDB、PHP)でMoodle 40.4をUbuntuにインストールし、UFW(Uncomplicated Firewall)とCertbotおよびLetsencryptを通じてMoodleをHTTPSで保護しました。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。