Moodleとは
オープンソースの学習管理システム(LMS)です。
BitnamiがDockerイメージを公開しているので、それを使って構築をしてみます。
https://hub.docker.com/r/bitnami/moodle external_link
構築
docker-composeで一発です。
以下の設定でデプロイしました。
version: '2' services: moodle_mariadb: image: 'docker.io/bitnami/mariadb:10.3-debian-10' environment: - ALLOW_EMPTY_PASSWORD=yes - MARIADB_USER=bn_moodle - MARIADB_DATABASE=bitnami_moodle volumes: - 'moodle_mariadb_data:/bitnami/mariadb' moodle: image: 'docker.io/bitnami/moodle:3.9.1-debian-10-r14' ports: - '8084:8080' - '8444:8443' environment: - MOODLE_DATABASE_HOST=moodle_mariadb - MOODLE_DATABASE_PORT_NUMBER=3306 - MOODLE_DATABASE_USER=bn_moodle - MOODLE_DATABASE_NAME=bitnami_moodle - ALLOW_EMPTY_PASSWORD=yes volumes: - 'moodle_data:/bitnami/moodle' - 'moodledata_data:/bitnami/moodledata' depends_on: - moodle_mariadb volumes: moodle_mariadb_data: driver: local moodle_data: driver: local moodledata_data: driver: local
mariadbのサービス名、バージョン指定、待受ポートだけ修正しました。
追加設定
アップロードサイズ制限の変更
デフォルト40MBで動画をアップするには少なすぎるので、上限を変更
- dockerコマンドでmoodleにログイン
# docker exec -it ******** /bin/bash
- vimをインストール
# install_packages vim
- php.iniの
upload_max_filesize
とpost_max_size
を編集# cd /opt/bitnami/php/etc/ # vim php.ini upload_max_filesize = 4000M post_max_size = 4000M
- Moodleを再起動
# docker restart ********
サイトURLを変更
プライベート空間に構築し、外部からリバースプロキシでアクセスさせる際に、サイトURLを設定しないとアクセスできない。
- dockerコマンドでmoodleにログイン
# docker exec -it ******** /bin/bash
- config.iniの
$CFG->wwwroot
を公開するURLに編集# cd /opt/bitnami/moodle # vim config.php if (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 'on') { $CFG->wwwroot = 'https://hoge.classact.co.jp'; } else {
- Moodleを再起動
# docker restart ********
ActiveDirectory連携(LDAP)
WebUIの
サイト管理
→プラグイン
→認証
→LDAPサーバ
で適宜設定
(詳細は省略します)
スマホアプリのPush通知
- Moodle App portal アカウントの作成
下記サイトでアカウントを作る
https://apps.moodle.com/local/apps/portal_index.php external_link - 指示に従ってサブスクリプションを進める
Airnotifier access keyが発行されたり、それを構築したサイトの管理画面から登録したり・・いくつかステップを踏みます(少し手間取りました)
ちなみにFreeプランで50デバイスまで、Proプラン(年199€)で500デバイスまで、Premiumプラン(年499€)で無制限にPush通知できるようです。
あとは使って覚えろ、もしくはググって調べろ、でなんとかなると思います。
Moodle Workplaceという商用版もあります。
https://moodle.com/workplace/ external_link
独立したテナントを作って管理権限の移譲などが出来るようです。
ホスティングサービスをする場合や企業内で分離した管理をしたい場合などに良いかもしれません。