
Open edX 部署教程四步在本地跑起完整在线学习平台【免费下载链接】openedx-platformThe Open edX LMS Studio, powering education sites around the world!项目地址: https://gitcode.com/GitHub_Trending/ed/openedx-platformOpen edX 是开源在线教育系统LMS学生用来上课的系统和 Studio老师建课的系统分工协作。这篇 Open edX 部署教程把完整流程拆成四步跟着做完你就能在本地跑起一套 LMS Studio 组合。先认识这个项目三大块分别干什么README 说得很直白平台由一个 Django 单体核心、若干可独立部署的应用IDA和一批 React 微前端MFE独立开发部署的前端页面组成。核心单体提供两个服务组件目录职责LMSlms/学生学习系统课程交付、学习记录、成绩与证书CMS即 Studiocms/建课系统课程结构、内容组件、学习单元管理XBlock / XModulexmodule/内置内容组件层章节、单元、题目、视频等块类型图上展示的是系统整体分工。要注意你浏览到的大部分页面其实是独立部署的 MFE靠 AJAX 和后端通信——所以核心服务起来之后还需要单独启动 MFE 才能获得完整界面。动手前自查清单逐项确认再开始官方 README 明确列出了裸机直接在 Linux 主机上安装环境要求逐项打勾Ubuntu 24.04Python 3.12Node 24仓库.nvmrc文件锁定的版本MySQL 8.0、MongoDB 7.x 已安装并启动Memcached 缓存服务可用磁盘留足空间放源码、依赖与数据库文件需要mysqlclient时先装系统依赖sudo apt install python3-dev default-libmysqlclient-dev build-essential pkg-config⚠️ 官方同时建议开发和生产都优先用 Tutor基于 Docker 的发行版裸机方式社区支持有限没有运维经验请先上 Tutor。实战四步跑起来第 1 步获取源码。克隆仓库并进入目录git clone https://gitcode.com/GitHub_Trending/ed/openedx-platform cd openedx-platform第 2 步安装依赖。前端走 npm后端走 uvPython 包管理器在仓库根目录执行npm clean-install --dev uv sync --group development --group ci第 3 步初始化数据库。先建两个 MySQL 库LMS、CMS 各一个在DATABASES配置里指向它们然后跑迁移建表./manage.py lms migrate ./manage.py lms migrate --databasestudent_module_history ./manage.py cms migrate注意 LMS 要跑两次第二条命令针对独立的学习行为历史库。第 4 步构建前端资产并启动服务。npm run build ./manage.py lms runserver 18000 ./manage.py cms runserver 18010npm run build用 webpack 打包 JS/CSS之后在两个终端分别把 LMS 起在 18000 端口、CMS 起在 18010 端口。README 特别提醒此时平台还是基本无头状态要完整操作界面需再单独启动 Authoring2001、Learning2000、Learner Home1996等 MFE。功能与模块导览定制平台的三条路Open edX 遵循开闭原则扩展点都有文档记录见 扩展点说明XBlockPython 插件定义一种新的交互式组件类型运营者先装进实例教师才能在课程里使用。内置块都在 xmodule/ 下。LTI学习工具互操作标准通过 iframe 嵌入第三方内容平台既当消费方也当提供方。REST API外部系统对接平台访问/api-docs/可看自动生成的 OpenAPI 文档。外观定制也开箱即用themes/ 目录自带 dark-theme、red-theme 等主题构建时通过COMPREHENSIVE_THEME_DIRS指向你自己的主题目录即可生效。调优与加固建议按场景逐条处理多节点部署 LMS把CACHES[default]指向共享的 Redis 或 Memcached否则 LTI Provider 的 OAuth 防重放等安全特性跨节点会失效。生产环境开 HTTPSlms/envs/production.py会自动设置SESSION_COOKIE_SAMESITENone以支持 LMS 与 Studio 跨站登录需同时满足SESSION_COOKIE_SECURETrue和 HTTPS纯 HTTP 环境请改用Lax代价是 Studio SSO 等跨站流程不可用。静态资源加速CDN 路径与 webpack 配置的调法见 静态资源文档。翻译与静态文件make pull_translations拉取翻译./manage.py lms collectstatic/./manage.py cms collectstatic收集静态文件开发环境可跳过。更贴近生产的域名实验性的development.py配置用 local.openedx.io 子域名跑服务玩法见 该配置使用教程。排坑与自检启动后常见问题排查迁移或启动报数据库连不上先确认 MySQL、Mongo、Memcached 三个服务真的在跑再核对DATABASES是否配了两个库、MySQL 用户是否有写权限。依赖安装失败mysqlclient等包需要 C 编译环境先执行自查清单里的 apt 安装命令再重试。页面一片空白属正常现象。前端已迁到 MFE需单独把 Authoring、Learning、Learner Home 三个 MFE 跑起来。端口冲突核心服务占 18000、18010MFE 占 1995–2001改runserver的端口号或对应的*_MICROFRONTEND_URL设置即可。走向生产三句话讲清生产环境请用社区官方的 Tutor 做容器化部署安装、定制、升级、扩容一条龙还自带开发模式备份重点盯住 MySQL 和 Mongo 两份数据如果不想自己运维官网提供的托管服务可以先用免费试用评估。写在最后对照清单自查、跑完四步你就有了第一个可用的 Open edX 实例。进阶配置建议翻官方文档站 docs.openedx.org卡住就去社区论坛 discuss.openedx.org 提问——大概率有人踩过一模一样的坑。【免费下载链接】openedx-platformThe Open edX LMS Studio, powering education sites around the world!项目地址: https://gitcode.com/GitHub_Trending/ed/openedx-platform创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考