Raspberry Pi でedX – ポータブル教室

31年2013月XNUMX日 | 執筆者

edXのDevOpsチームは、Open edXを世界中の誰もが利用できるようにするために、コミュニティと連携して取り組んでいます。 edx.org is 一般に公開される GPLライセンスの下で提供されています。edx-platformのソースコードに加え、プラットフォームをインストールおよびアップデートするための設定スクリプトも公開されています。 設定リポジトリ設定に使用するツールは Ansibleは、当社の運用チームにとって柔軟性とシンプルさのバランスが取れた Python ベースの構成管理ツールです。

定期的に edXがVagrantイメージをリリース edXをPCにインストールしたい場合は、 ドキュメント 仮想マシンでローカルにプラットフォームをセットアップします。

私たちは通常、edX を大規模なクラウドベースの運用サーバーに展開することに重点を置いていますが、この投稿ではまったく異なる課題、つまり Raspberry Pi で edX コースとオーサリング ソフトウェアを実行するための概念実証について説明します。

ラズベリーパイ

その ラズベリーパイ ARM/Linuxを搭載した低価格のコンピュータで、約35ドルで購入できます。Raspberry Piのような低価格デバイスでedXウェブサイトを運用すれば、インターネットへのアクセスが限られている地域でも移動式教室を開設できる可能性があります。Raspberry Piを使えば、ノートパソコンやデスクトップコンピュータよりも安価にこれを実現できます。

Raspberry Pi上で最小限のサイト構成は機能しますが、複数の学生を対象とする実際のコースで使用するにはまだ十分なパフォーマンスが得られていません。ただし、このプラットフォームは1人の学生であれば問題なく機能し、改善の余地があります。

ダウンロードとインストール

  • ステップ 1: あらかじめ作成された Raspberry Pi イメージをダウンロードします。 edx-raspberrypi-20131228.img.gz
  • ステップ 2SDカードをフラッシュする
    sshのデフォルトのユーザー名とパスワードを使用できます - user: pi パスワード:ラズベリー
  • ステップ 3: スーパーバイザが実行されており、LMS と CMS の両方が実行されていることを確認します。
    sudo service supervisor start

    sudo /edx/bin/supervisorctl -c /edx/etc/supervisord.conf
  • ステップ 4: ブラウザで LMS と Studio に接続します。
    LMS on port 18000 - `http://[ip address]:18000 `

    Studio on port 18010 - `http://[ip address]:18010`

    username: staff@example.com password: edx

何が機能し、何が機能しないか

  • Studioを使用して新しいコースを作成する

新しいコースの作成ページ

  • 学生としてコースにアクセスする

新しいコースに対する学生の意見

Chrome devtools を使用してページのレンダリング時間を測定します。

  • LMSデモコースウェアページ 約5秒
  • 学生ダッシュボードページ 約5秒

以下の機能はまだサポートされていません。

  • フォーラム 有効になっていないため、現在のバージョンの Mongo と互換性がない可能性があります。
  • カスタム コード グレーダーは有効になっていません。
  • ORA / 識別する 機械学習用が有効になっていません。

Raspberry PiでのedXの設定

Raspberry Piハードウェア

  • 700MHz ラズベリーパイ / 500MB
  • 8 GB SDカード

サービス構成

インストール後、Raspberry Pi 上で次のサービスが実行されます。

  • Nginx/Gunicorn
  • Python/Django とそれに依存するすべての Python ライブラリ
  • MySQL
  • モンゴ
  • Memcached

edXに必要なすべてのものは/edx以下に配置されており、複数のPython仮想環境に完全に自己完結しています。Mongoは/edx/mongoにインストールされ、これは 非x86ポート ARM向けにコンパイルされています。Raspberry Pi用にすべてをゼロからコンパイルするには数日かかるため、良い出発点となるパブリックイメージが利用可能です。

本格的に使用するには、いくつかの注意点と改善が必要です。

  • 不要なログ記録を排除する必要があります。ログレベルは CRITICAL に設定されていますが、追跡ログは現在 SD カードに書き込まれています。
  • 全体的なパフォーマンスは理想的ではなく、より積極的なキャッシュを設定したり、追加のコード変更を行ったりしなければ、改善することは困難です。
  • edx-platform リポジトリの更新には約 1 時間かかります。

Ansibleによる設定

を使用しております Ansible edX構成管理ツールを本番システム用として使用します。同じスクリプトに若干の修正を加えることで、Raspberry Piでも動作します。

AnsibleはRaspberry Pi上にセットアップされているため、edx-platformの新しいバージョンへのアップデートや設定変更が簡単です。アセットコンパイル(CoffeescriptとSass)のため、アップデートには約1時間かかりますが、この手順はアーキテクチャに依存しないため、オフラインでも実行できます。

Raspberry Piを最新のedx-platformコミットにアップデートする方法

次のコマンドを Raspberry Pi 上で直接実行して、構成または edx-platform リポジトリのバージョンを更新できます。

 
# Ensure that the configuration repo is on the Raspberry Pi branch

sudo /edx/bin/設定jarv/raspberrypiを更新
# Raspberry Pi Ansibleプレイブックを実行する
cd /edx/app/edx_ansible/edx_ansible/playbooks/edx-east
/edx/app/edx_ansible/venvs/edx_ansible/bin/ansible-playbook -i localhost、-c local --tags で raspberrypi.yml をデプロイ -e "edx_platform_version=master" 

ヘルプとトラブルシューティング

edXに関するサポートが必要な場合は、 コミュニティメーリングリストRaspberry PiでedXを実行することについて具体的な質問がある場合は、これはプロトタイプであり、公式のメンテナンスやサポートは行われていないことにご注意ください。Raspberry Piまたは他のプラットフォームで動作する場合は、 私に教えてください — ぜひご意見をお聞かせください!

ローディング

議論を始める 議論する.openedx.org

もっと時間が必要ですか? 以下の記事をご覧ください。

共に問題を解決する:コミュニティ主導のプラットフォーム開発
Open edXカンファレンスで未来を切り拓くスキルとスケールアップ
Open edXカンファレンス開発者向けワークショップ
デジタルの未来を取り戻す:私がオープン・ルネッサンス・グループに参加した理由
Open edX カンファレンス 2026 に参加しましょう!

2026 Open edX カンファレンスでは、世界最高峰のオープンソース オンライン学習管理システムの XNUMX つである Open edX プラットフォームの革新的な使用事例を紹介し、教育設計、コース構成、生成 AI などの画期的なテクノロジーを含む Open edX プラットフォームの運用と拡張の方法における最新の進歩を紹介します。