我正在使用预安装的映像在 aws 中运行全栈 edx 平台。我尝试使用此处描述的手动方法应用斯坦福主题:
https://github.com/edx/edx-platform/wiki/Stanford-Theming
我克隆了一个位于此处的主题存储库:
https://github.com/Stanford-Online/edx-theme
并做了上述教程中描述的事情。主题文件被放置在相应的目录中。
但是重新编译 lms 资产后,lms 并没有改变。
没啥事儿。
我正在使用预安装的映像在 aws 中运行全栈 edx 平台。我尝试使用此处描述的手动方法应用斯坦福主题:
https://github.com/edx/edx-platform/wiki/Stanford-Theming
我克隆了一个位于此处的主题存储库:
https://github.com/Stanford-Online/edx-theme
并做了上述教程中描述的事情。主题文件被放置在相应的目录中。
但是重新编译 lms 资产后,lms 并没有改变。
没啥事儿。
###这些说明最初是为 Birch 编写的。有关 Eucalyptus(及更高版本),请参阅下面的更新部分
以下是使用此处描述的手动方法启用自定义主题的步骤:
https://github.com/edx/edx-platform/wiki/Stanford-Theming
首先创建基础虚拟机:
mkdir fullstack
cd fullstack
curl -L https://raw.githubusercontent.com/edx/configuration/master/vagrant/release/fullstack/Vagrantfile > Vagrantfile
vagrant plugin install vagrant-hostsupdater
export OPENEDX_RELEASE="named-release/birch"
vagrant up
下载虚拟盒子时,这可能需要一段时间。关键是导出 OPENEDX_RELEASE 环境变量。这特别是安装 Birch 命名版本。随着时间的推移,这将改变。在此处查看有关命名版本的更多信息:
https://edx.readthedocs.io/projects/edx-developer-docs/en/latest/named_releases.html
现在,SSH 进入 VM 并成为 edxapp 用户:
vagrant ssh
sudo su edxapp -s /bin/bash
cd ~
source edxapp_env
从github上拉下主题:
mkdir themes
cd themes
git clone https://github.com/Stanford-Online/edx-theme.git default
配置 edX 以使用新主题:
cd /edx/app/edxapp
vi lms.env.json
change "USE_CUSTOM_THEME": false to "USE_CUSTOM_THEME": true
change "THEME_NAME": "", to "THEME_NAME": "default",
exit and save vi
重新编译资产:
cd /edx/app/edxapp/edx-platform
paver update_assets lms --settings=aws
使用浏览器进行测试:http: //192.168.33.10 :8000/courses 或 http://localhost:8000/courses
#更新
###Eucalyptus 版本中的安装和主题化过程已更改。
要安装 devstack 或 fullstack,请按照以下步骤操作: edx-installing-configuring-and-running
要启用斯坦福主题,请执行以下步骤: edx-installing-configuring-and-running...#enable-themes
在以下变量中设置/edx/app/edxapp/lms.env.json
:
ENABLE_COMPREHENSIVE_THEMING: true,
COMPREHENSIVE_THEME_DIRS: ["/edx/app/edxapp/edx-platform/themes" ],
DEFAULT_SITE_THEME: "stanford-style",
然后重启应用:sudo /edx/bin/supervisorctl restart edxapp:
如果这有效,那么恭喜!您已正确配置 Open edX 主题。现在开始自定义您的主题,您需要将“stanford-style”下的所有文件复制到您自己的目录结构中。这非常重要,因此您可以将文件置于与 Open edX 分开的配置控制之下。
把主题放在这里:/edx/app/edxapp/themes/<your-theme-name>
sudo mkdir /edx/app/edxapp/themes
sudo chown edxapp:edxapp /edx/app/edxapp/themes
cd /edx/app/edxapp/themes
sudo cp -R /edx/app/edxapp/edx-platform/themes/stanford-style <your-theme-name>
sudo chown -R edxapp:edxapp <your-theme-name>
然后,更改 lms.env.json 中的变量
ENABLE_COMPREHENSIVE_THEMING: true,
COMPREHENSIVE_THEME_DIRS: ["/edx/app/edxapp/themes" ],
DEFAULT_SITE_THEME: "<your-theme-name>",
在移动到生产环境之前,通过将变量移动到/edx/app/edx_ansible/server-vars.yml
(仅在全栈或本机中工作)来使这些更改永久化。如果该文件尚不存在,则创建它。变量的定义和命名略有不同server-vars.yml
。
EDXAPP_ENABLE_COMPREHENSIVE_THEMING: true
EDXAPP_COMPREHENSIVE_THEME_DIRS:
- /edx/app/edxapp/themes
EDXAPP_DEFAULT_SITE_THEME: "<your-theme-name>"
然后,运行sudo /edx/bin/update edx-platform open-release/eucalyptus.2
以自动生成一个新的lms.env.json
. 检查lms.env.json
以确保正确处理了 ansible 变量。
你需要:
有完整的指南: