Ubuntu20.04にMoodleをインストールする方法

Moodle は無料のオープンソース学習管理システム(LMS)です。 PHPプログラミング言語で書かれています。 Moodleは、より良い学習体験のために多くの学校、大学、組織で使用されています。

Moodleは提供します コンテンツ管理、ユーザーフレンドリーなUI、レポート、クイズ、フィードバック、出席リストなど。

このガイドでは、独自の設定方法について説明します Moodle サーバーをゼロから Ubuntu 20.04 を使用して LEMP スタック。

UbuntuにLEMPスタックをインストールする

LEMPは、Linux、Nginx、MySQL / MariaDB、およびPHPで構成されるオープンソースソフトウェアのコレクションです。 LEMPは基本的に、NginxをWebサーバーとして使用するLAMPスタックの代替手段です。 Apache。

Linuxの場合、このガイドではUbuntu20.04を使用しています。 持っているユーザーと一緒に行く準備ができていることを確認してください sudo 容量。

Nginxをインストールします

Nginx Webを介して学習リソースを提供するために必要です。 NGINX Webサーバーの既存のインスタンスがない場合は、この他のガイドの手順に従って、Ubuntu20.04にNGINXをインストールしてください。 登録したドメイン名でNGINXを正常に構成したら、このガイドに戻って、以下の次の手順に進むことができます。

MySQL / MariaDBをインストールします

Moodleデータを保存するにはデータベースが必要です。 Moodleで最も一般的に使用されるデータベースは、通常、MySQL / MariaDBまたはPostgresです。

Moodleデータベーステーブルには、ユーザー、コース、サイト情報、分析用データに関する情報が含まれています。

MySQLから派生したオープンソースのデータベース管理システムであるMariaDBをインストールします。

次のコマンドを実行して MariaDBをインストールします Ubuntuの場合:

$ sudo apt-get install mariadb-server mariadb-client

次のコマンドは、mariadbインストールを構成および保護するための組み込みスクリプトを実行します。

$ sudo mysql_secure_installation

指示を注意深く読むことが重要です。 まず、mysqlrootユーザーの現在のパスワードを入力するように求められます。 これは新規インストールであるため、mysqlrootユーザーのパスワードは空白です。 したがって、Enterキーを押して次に進みます。

Enter rootの現在のパスワード(noneの場合は入力):OK、正常に使用されたパスワード、次に進みます…

2番目のステップは、mariadbのrootパスワードを設定することです。 Enter Y 次に、希望のパスワードを入力します。

rootパスワードを設定しますか? [Y/n] Y
新しいパスワード:新しいパスワードを再入力してください:パスワードが正常に更新されました! 特権テーブルのリロード..…成功!

次に、匿名ユーザーを削除します。 Enter Y 確認するために。

匿名ユーザーを削除しますか? [Y/n] Y
… 成功!

次のステップは、rootログインをリモートで無効にすることです。 Enter Y 確認するために。

rootログインをリモートで禁止しますか? [Y/n] Y
… 成功!

Enter Y テストデータベースの削除を確認します。

テストデータベースを削除してアクセスしますか? [Y/n] yテストデータベースの削除……成功! テストデータベースの権限を削除しています……成功!

最後のステップは、変更を有効にするために特権テーブルをリロードすることです。 Enter Y 確認するために。

今すぐ特権テーブルをリロードしますか? [Y/n] Y
… 成功! 片付け…すべて完了! 上記のすべての手順を完了すると、MariaDBのインストールは安全になります。 MariaDBをご利用いただきありがとうございます。

これで、mariadbにログインして、moodleデータを保存するためのデータベースを作成できます。 以下のコマンドを実行し、プロンプトが表示されたらmariadbrootパスワードを入力します。

$ sudo mysql -u root -p

ログインしたら、次のコマンドを実行してデータベースを作成します。

> CREATE DATABASE moodle;

次に、次のように、mariadbでMoodleのユーザーアカウントを作成します。 交換することを忘れないでください moodlesuperパスワード あなた自身の価値観で。

> CREATE USER’moodlesuper ‘@’ localhost ‘IDENTIFIED BY’password’;

次のコマンドは、新しく作成されたユーザーアカウントに必要な権限を付与します。

> GRANT SELECT、INSERT、UPDATE、DELETE、CREATE、CREATE TEMPORARY TABLES、DROP、INDEX、ALTER ONmoodle。* TO’moodlesuper ‘@’ localhost ‘;

次のようにmariadbからログアウトします。

>やめる

PHPをインストールする

PHP Moodleコンテンツに対するユーザーリクエストを動的に処理するために必要です。 NGINXは、PHP-FPM、つまりFastCGI ProcessManagerを使用してPHPと連携します。

以下のコマンドを実行して、必要なPHPコンポーネントをインストールします。

$ sudo apt-get install php-fpm php-mysql php-xml

インストールしたら、次のステップは、PHPリクエストをPHP-FPMに転送するようにNGINXを構成することです。 そのためには、MoodleウェブサイトのNGINXサーバーブロックファイルを編集する必要があります。 にとって example、以下のコマンドは私の ‘cloudindevs.com’Moodleウェブサイトのサーバーブロックファイルを開きます。

$ sudo nano / etc / nginx / sites-available / cloudindevs

サーバーブロックファイルに、 index.php インデックスで始まる行に。 また、次の構成ディレクティブをコピーして、サーバーブロックファイルの既存のロケーションディレクティブのすぐ下に貼り付けます。

# pass PHP scripts to FastCGI server
location ~ [^/].php(/|$) {
fastcgi_split_path_info ^(.+.php)(/.+)$;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

変更後、サーバーブロックファイルのその部分は、下の画像に表示されているもののようになります。 新しい追加は赤でマークされています。

PHP-FPMで動作するようにNGINXを構成する

設定をテストするには、以下のコマンドを実行して、moodleウェブサイトのルートディレクトリにサンプルのindex.phpファイルを作成します。 ‘cloudindevs.com’を自分のWebサイトアドレスに置き換えることを忘れないでください。

$ sudo nano /var/www/cloudindevs.com/index.php

以下のサンプルPHPコードをコピーしてindex.phpファイルに貼り付けます。

<?php echo 'NGINX is working with PHP-FPM!'; ?>

Save と close index.phpファイル。 Webブラウザでyourwebsite.com/index.phpにアクセスすると、以下のサンプルページが表示されます。

PHP-FPM構成をテストするPHP-FPM構成をテストする

SSL(https)を使用するには、Let’sEncryptを使用してNginxをフォローします。

UbuntuにMoodleをインストールする

このガイドを書いている時点で、 最新のMoodleバージョン 3.10.1であり、 ダウンロード 次のように。

$ sudo wget https://download.moodle.org/download.php/direct/stable310/moodle-3.10.1.tgz

次に、ダウンロードしたパッケージのコンテンツを抽出し、Moodleウェブサイトのルートディレクトリに配置します。 これが example。

$ sudo tar -zxvf moodle-3.10.1.tgz -C /var/www/cloudindevs.com

抽出したMoodleフォルダの所有権と権限を次のように変更する必要があります。 デフォルトのNGINXサービスアカウントは www-data

$ sudo chown -R www-data:www-data /var/www/cloudindevs.com/moodle $ sudo chmod -R 755 /var/www/cloudindevs.com/moodle

次の3つのコマンドを実行して、アップロードされたファイルとフォルダーを保存するためのMoodleの適切な権限を持つディレクトリを作成します。 Moodleデータディレクトリはウェブ経由でアクセスできないようにする必要があります。

$ sudo mkdir / var / moodledata $ sudo chown -R www-data:www-data / var / moodledata $ sudo chmod -R 755 / var / moodledata

Moodle構成

それでは、メインのMoodle設定ファイルを作成しましょう。 これを行うには、ディレクトリを変更し、以下のコマンドを実行して、抽出されたMoodleフォルダにサンプル構成ファイルをコピーします。

$ cd /var/www/cloudindevs.com/moodle $ sudo cp config-dist.php config.php

編集のためにconfig.phpファイルを開きます。

$ sudo nano config.php

の中に データベースの設定 config.phpファイルのセクションで、次の手順を実行します。

  1. 交換 pgsql mariadb付き
  2. 交換 moodle mariadbのセットアップ中に作成したデータベースの名前
  3. 変化する ユーザー名 以前に作成した実際のデータベースユーザー名に
  4. 変化する パスワード データベースのパスワードに

に到達するまで下矢印キーを押します ウェブサイトの場所 config.phpファイルのセクション。

交換 http://example.com / moodlehttps://yoursite.com/moodle

たとえば、私のものは「https://cloudindevs.com/moodle」になります

さらに下にスクロールして、 データファイルの場所 config.phpファイルのセクション。

変化する /家/example/ moodledata 以前に作成したmoodleデータディレクトリに移動します。 私のは/ var / moodledataになります

moodleウェブインターフェースにアクセスする

この時点で、Webブラウザーを開き、yoursite.com / moodleにアクセスしてインストールを完了することができます。

これは、Webブラウザで「www.cloudindevs.com/moodle」にアクセスしたときに得られるものです。

MoodleWebインストールページMoodleWebインストールページ

クリック 継続する 続行します。 次のページで、プラグインの欠落に関するエラーが発生する可能性があります。 を参照してください example 下の画像で。

MoodleサーバーチェックMoodleサーバーチェック

問題を解決するには、をクリックします インストールして有効にする必要があります 指示に従って、必要な拡張機能をインストールします。 必要な拡張機能をインストールした後、NGINXを再起動します sudo systemctl restart nginx 次に、[サーバーチェック]ページをリロードして、エラーがなくなったかどうかを確認します。

Moodleサーバーチェックに合格Moodleサーバーチェックに合格

エラーがなくなった場合は、クリックしてください 継続する 続行します。

Moodleメイン管理者アカウントを設定する

Moodleを正常にインストールすると、メインの管理者アカウントを設定するためのページが表示されます。 ユーザー名、パスワード、その他の必要な情報を指定する必要があります。

また、サイト名、フロントページの概要、場所の設定などを構成するように求められます。完了したら、をクリックします。 Save 変更 ページの下部にあります。

Save  Moodle設定Save Moodle設定

これでMoodleのインストールは終わりです。 これが私の新しいMoodleウェブサイトの様子です。

Moodleが正常にインストールされましたMoodleが正常にインストールされました

結論

Covid-19のパンデミックが始まって以来、オンライン学習は多くの注目を集めています。それは事実です。 多くの教育機関は、Moodleのようなオンライン学習管理システムを通じてeラーニングプラットフォームを作成しています。

このガイドでは、Ubuntu20.04にMoodleサーバーを最初から正常にインストールして構成しました。 Moodleウェブサイトの使用および管理方法の詳細については、公式にご相談ください Moodleドキュメント