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

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

2025-06-19 14:18:02作者:幸俭卉

工作坊配置概述

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工作坊,您可以创建结构清晰、交互性强的技术培训内容,为学员提供优质的学习体验。

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

项目优选

收起
kernelkernel
deepin linux kernel
C
22
6
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
197
2.17 K
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
208
285
pytorchpytorch
Ascend Extension for PyTorch
Python
59
94
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
974
574
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
9
1
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
549
81
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
1.02 K
399
communitycommunity
本项目是CANN开源社区的核心管理仓库,包含社区的治理章程、治理组织、通用操作指引及流程规范等基础信息
393
27
MateChatMateChat
前端智能化场景解决方案UI库,轻松构建你的AI应用,我们将持续完善更新,欢迎你的使用与建议。 官网地址:https://matechat.gitcode.com
1.2 K
133