首页
/ Educates培训平台工作坊配置详解

Educates培训平台工作坊配置详解

2025-06-19 11:02:24作者:幸俭卉

工作坊配置概述

Educates培训平台是一个用于创建和交付技术培训内容的强大工具,它允许培训师构建交互式学习环境。工作坊(Workshop)作为Educates的核心概念,由两个主要组件构成:

  1. 工作坊定义:描述工作坊的部署设置和Educates环境配置
  2. 工作坊文件:包含工作坊说明文档、设置文件和练习文件

工作坊定义详解

工作坊定义通过Kubernetes自定义资源(CRD)实现,主要配置文件为resources/workshop.yaml。下面我们深入分析其关键配置项。

基础配置示例

apiVersion: training.educates.dev/v1beta1
kind: Workshop
metadata:
  name: lab-markdown-sample
spec:
  title: Markdown示例工作坊
  description: 使用Markdown的示例工作坊
  workshop:
    files:
    - git:
        url: https://github.com/educates/lab-markdown-sample
        ref: origin/main
      includePaths:
      - /workshop/**
      - /exercises/**
      - /README.md
  session:
    namespaces:
      budget: small
    applications:
      console:
        enabled: true
      editor:
        enabled: true

关键配置解析

  1. 工作坊文件来源

    • 支持从Git仓库获取工作坊文件
    • 可通过includePaths指定需要包含的文件路径
    • 文件将被覆盖在标准工作坊基础镜像之上
  2. 基础镜像选择

    • 默认提供标准基础镜像
    • 可选Java(JDK 17)和Python专用基础镜像
    • 支持自定义镜像
workshop:
  image: jdk17-environment:*  # Java JDK 17基础镜像
  1. 会话配置
    • 控制台(console)和编辑器(editor)的启用状态
    • 命名空间资源预算设置
    • Kubernetes集群配额配置

工作坊内容渲染选项

Educates支持两种内容渲染引擎:

  1. Classic渲染器

    • 原生动态Web应用
    • 支持Markdown和AsciiDoc
    • 通过YAML文件配置导航结构
  2. Hugo渲染器

    • 基于Hugo生成静态HTML
    • 仅支持Markdown
    • 更灵活的导航配置选项

Classic渲染器配置

通过以下文件配置工作坊结构:

  1. workshop/modules.yaml - 定义所有可用模块
  2. workshop/workshop.yaml - 指定实际使用的模块

模块配置示例

# modules.yaml
modules:
  00-workshop-overview:
    name: 工作坊概述
    exit_sign: 开始工作坊
  01-workshop-instructions:
    name: 工作坊说明
  99-workshop-summary:
    name: 工作坊总结
    exit_sign: 完成工作坊

工作坊激活配置

# workshop.yaml
name: 示例工作坊

modules:
  activate:
  - 00-workshop-overview
  - 01-workshop-instructions
  - 99-workshop-summary

Hugo渲染器配置

Hugo渲染器提供更灵活的导航配置方式:

  1. 默认行为

    • 自动包含workshop/content目录下所有页面
    • 按路径名或页面权重排序
  2. 高级配置

    • 通过workshop/config.yaml定义导航路径
    • 支持多路径选择
    • 可通过环境变量指定路径

配置示例

pathways:
  default: workshop

  paths:
    workshop:
      title: "示例工作坊"
      steps:
      - 00-workshop-overview
      - 01-workshop-instructions
      - 99-workshop-summary

modules:
- name: 00-workshop-overview
  title: 工作坊概述
- name: 01-workshop-instructions
  title: 工作坊说明
- name: 99-workshop-summary
  title: 工作坊总结

最佳实践建议

  1. 镜像选择

    • 简单工作坊使用标准基础镜像
    • Java/Python开发工作坊使用专用镜像
    • 复杂环境考虑自定义镜像
  2. 内容组织

    • 保持模块结构清晰
    • 为最终模块设置明确的完成标识
    • 考虑多路径配置满足不同学习需求
  3. 渲染器选择

    • 需要AsciiDoc支持时使用Classic
    • 追求性能时选择Hugo
    • 复杂导航需求考虑Hugo的多路径功能

通过合理配置Educates工作坊,您可以创建结构清晰、交互性强的技术培训内容,为学员提供优质的学习体验。

登录后查看全文
热门项目推荐

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
260
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
858
507
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
255
299
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
331
1.08 K
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
397
370
note-gennote-gen
一款跨平台的 Markdown AI 笔记软件,致力于使用 AI 建立记录和写作的桥梁。
TSX
83
4
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
kernelkernel
deepin linux kernel
C
21
5