基于 Jekyll 的 MXNet 官方文档站(MXNet.io v2)构建与发布指南
深度学习机器学习人工智能【免费下载链接】mxnetLightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more项目地址https://gitcode.com/gh_mirrors/mxnet1/mxnet点击查看免费下载本文围绕仓库中的 docs/static_site/README.md 展开系统讲解 MXNet 项目第二代官方静态文档站点MXNet.io v2的完整构建与发布流程从本地环境搭建、开发模式预览到 Beta 站点与正式Release站点的差异化构建。读完本文你将掌握 Jekyll 站点的开发、多环境配置_config_beta.yml/_config_prod.yml切换、输出产物管理以及如何借助仓库内的Makefile、Gemfile与自定义 Liquid 插件一键复现官方文档站的生产构建。一、站点定位与目录结构MXNet.io v2 是 MXNet 官方文档站点的第二版基于 Jekyll 静态站点生成器构建用于承载官网首页、Get Started 安装指南、各语言 API 文档、博客与社区生态页面。站点源码位于仓库的docs/static_site/src目录构建产物输出到独立的docs/release目录。核心目录结构如下docs/static_site/src/_config.ymlJekyll 全局默认配置站点标题、联系方式、Markdown 引擎、插件声明docs/static_site/src/_config_beta.ymlBeta 预览环境配置指定 GitHub Pages 的baseurl与urldocs/static_site/src/_config_prod.yml正式发布环境配置指向 mxnet.apache.org 官网域名并启用 Google Analyticsdocs/static_site/src/_layouts/页面布局模板default.html、home.html、page.html、page_api.html等docs/static_site/src/_includes/可复用片段导航、页脚、社交图标、Get Started 各平台安装说明docs/static_site/src/_plugins/markdowner.rb自定义 Liquid 标签markdown用于在 HTML 模板中嵌入 Markdown 片段docs/static_site/src/assets/静态资源SVG 图标、图片、JavaScript 工具脚本docs/static_site/src/pages/各语言Python、R、Scala、Java、C、Perl、Clojure、Julia的 API 文档与 FAQ 页面源文件docs/static_site/src/index.html官网首页通过 Front Matter 定义关键特性、生态工具D2L.ai、GluonCV、GluonNLP、GluonTS与社区入口。以首页为例index.html 通过 YAML Front Matter 声明layout: home并注入key_featuresHybrid Front-End、Distributed Training、8 Language Bindings、Tools Libraries数据模板层使用{{ site.title }}等 Liquid 变量渲染全局配置。二、环境准备安装 Jekyll 与依赖在开始构建前需要先在本机安装 Jekyll。官方安装文档位于 Jekyll 官网的 Installation 页面安装完成后进入站点源码目录cd docs/static_site/src项目依赖由 Gemfile 管理核心依赖声明如下jekyll版本约束~ 3.8.6静态站点生成引擎minima~ 2.0Jekyll 默认主题redcarpetMarkdown 渲染器Beta 与正式环境配置文件均将其作为markdown引擎jekyll-feed~ 0.6RSS/Atom 订阅生成插件声明在:jekyll_plugins分组内tzinfo/tzinfo-data仅 Windows 平台按需安装wdm~ 0.1.0仅 Windows 平台用于提升目录监听性能。建议使用 Bundler 管理依赖确保本地环境与锁文件 Gemfile.lock 记录的一致bundle install之后所有 Jekyll 命令均通过bundle exec前缀运行以保证使用 Gemfile 锁定的版本而非系统全局版本。三、开发模式本地实时预览开发调试阶段使用 Jekyll 内置的开发服务器cd docs/static_site/src JEKYLL_ENVdevelopment bundle exec jekyll serve要点说明JEKYLL_ENV环境变量用于控制 Jekyll 构建环境。当取值为development时站点以开发模式运行jekyll serve会在本地启动 HTTP 服务默认监听http://127.0.0.1:4000并监听源文件变化自动增量重建适合边改边看注意 docs/static_site/src/_config.yml 中明确提示出于技术原因_config.yml在jekyll serve运行期间不会自动重载修改该文件后必须重启服务进程才能生效开发模式使用默认配置此时不指定baseurl与url站点从站点根路径直接访问。四、Beta 站点构建输出到docs目录README 给出 Beta 预览站点的构建命令cd docs/static_site/src JEKYLL_ENVproduction bundle exec jekyll build --config _config_beta.yml -d ../docs cd ..逐步拆解该命令参数作用JEKYLL_ENVproduction以生产环境变量构建此时site.environment为production模板中相关条件分支会生效--config _config_beta.yml显式指定使用 Beta 环境配置文件而非默认的_config.yml-d ../docs将构建产物输出到docs/static_site/docs目录相对src的../docs cd ..构建完成后切回docs/static_site目录Beta 配置的核心差异体现在 docs/static_site/src/_config_beta.yml 中baseurl: /mxnet.io-v2 # the subpath of your site, e.g. /blog url: https://thomasdelteil.github.io其中baseurl声明站点部署在域名子路径/mxnet.io-v2下url指向预览托管域名。这意味着 Beta 构建产物的所有资源链接都会带上/mxnet.io-v2前缀可被 GitHub Pages 直接托管预览。README 末尾给出了预览地址https://thomasdelteil.github.io/mxnet.io-v2/与这里的baseurl/url配置相互印证。此外 Beta 配置还指定了 Markdown 引擎为redcarpet并启用扩展no_intra_emphasis、fenced_code_blocks、autolink、tables、with_toc_data与正式配置保持一致而默认的_config.yml则使用kramdown引擎两者渲染行为不同这也是多环境配置需要关注的点。五、正式站点构建输出到release目录正式发布版本使用独立配置与输出目录cd docs/static_site/src JEKYLL_ENVproduction bundle exec jekyll build --config _config_prod.yml -d ../release cd ..与 Beta 构建相比仅替换了配置文件和输出目录。正式配置 docs/static_site/src/_config_prod.yml 的关键差异url: https://mxnet.apache.org google_analytics: UA-96378503-1url指向 MXNet 官方域名https://mxnet.apache.org且未设置baseurl即站点部署在域名根路径google_analytics声明了站点级 Google Analytics 跟踪 ID对应_includes目录中的google-analytics.html片段用于正式站点的访问统计与 Beta 配置相同使用redcarpet作为 Markdown 渲染引擎。六、一键构建Makefile 封装仓库在 docs/static_site/Makefile 中封装了正式站点的构建流程all: html html: mkdir -p build cd src bundle install JEKYLL_ENVproduction bundle exec jekyll build --config _config_prod.yml -d ../build/html cd .. clean: rm -rf build用法make或make html先创建build目录进入src执行bundle install安装依赖再以_config_prod.yml构建正式站点产物输出到docs/static_site/build/htmlmake clean删除整个build目录。可以看到Makefile 的目标与 README 中的手动命令等价适合 CI 流水线或本地一键复用。仓库的 Jenkins 流水线如 ci/jenkins/Jenkinsfile_website_jekyll_docs、ci/jenkins/Jenkinsfile_website_full也与此类构建流程配套用于自动发布文档站点。七、进阶自定义 Markdown 插件站点在 docs/static_site/src/_plugins/markdowner.rb 中注册了一个自定义 Liquid 标签markdown实现在 HTML 模板中内嵌 Markdown 内容的能力module Jekyll class MarkdownBlock Liquid::Block def initialize(tag_name, text, tokens) super end require kramdown def render(context) content super #{Kramdown::Document.new(content).to_html} end end end Liquid::Template.register_tag(markdown, Jekyll::MarkdownBlock)原理说明继承Liquid::Block定义块级标签块体内的原始文本通过super获取调用Kramdown::Document.new(content).to_html将 Markdown 源码渲染为 HTML 字符串最后通过Liquid::Template.register_tag(markdown, ...)注册之后便可在任何模板中书写{% markdown %}...{% endmarkdown %}。注意该插件硬编码使用kramdown渲染器而 Beta/正式环境的全局markdown引擎是redcarpet——这是站点构建链中值得留意的细节内嵌片段与全局内容的渲染器并不一致。八、发布到 GitHub Pages托管与验证README 将 Beta 站点定位为 hosting the mxnet.io beta website即通过 GitHub Pages 托管。典型流程为执行第四节中的 Beta 构建命令将产物输出到docs/static_site/docs将该目录作为 GitHub Pages 的发布源配合_config_beta.yml中的baseurl: /mxnet.io-v2与url: https://thomasdelteil.github.io访问 README 提供的预览地址验证站点效果验证通过后执行第五节中的正式构建命令将产物输出到release目录再部署到https://mxnet.apache.org根路径。需要特别提醒的注意事项两个构建命令都使用JEKYLL_ENVproduction即使 Beta 预览也处于生产构建模式这会影响模板中基于jekyll.environment的条件逻辑_config.yml修改后需重启jekyll serve进程才会生效Beta 与正式站点的baseurl不同/mxnet.io-v2与根路径切换环境时务必使用对应的--config参数避免资源路径错乱若使用 GitHub Pages 自带构建则需将Gemfile中gem jekyll替换为gem github-pages插件组Gemfile 注释中已给出提示但本仓库采用本地构建后推送产物的方式不依赖 Pages 的远端构建。总结MXNet.io v2 是一套标准的 Jekyll 多环境静态站点方案用JEKYLL_ENV区分开发/生产语义用_config_beta.yml/_config_prod.yml区分预览/正式部署目标用-d参数控制输出目录并用Makefile与bundle固化依赖与构建步骤。掌握这套命令与配置差异即可独立复现 MXNet 官方文档站的本地预览、Beta 托管与正式发布全流程如需深度定制还可参考_plugins/markdowner.rb的插件写法扩展站点能力。赞分享深度学习机器学习人工智能【免费下载链接】mxnetLightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more项目地址https://gitcode.com/gh_mirrors/mxnet1/mxnet点击查看免费下载相关推荐Apache MXNet 官网静态站mxnet.io v2构建与发布指南基于 Jekyll 的本地预览、Beta 与 Release 全流程Apache MXNet 官网静态站mxnet.io v2构建与发布指南基于 Jekyll 的本地预览、Beta 与 Release 全流程 Apache深度学习人工智能机器学习分布式训练MXNet 文档构建与网站发布全指南从本地 Sphinx/Jekyll 构建到 CI 部署MXNet 文档构建与网站发布全指南从本地 Sphinx/Jekyll 构建到 CI 部署 本指南完整讲解 Apache MXNet 仓库中文档体系的组织方式人工智能深度学习机器学习Sa-Token 文档站构建与发布指南基于 VitePress 的官方文档工程全解析Sa Token 文档站构建与发布指南基于 VitePress 的官方文档工程全解析 导读 本文围绕仓库中 sa token doc new/ 文档工程的 R后端认证鉴权单点登录上一篇COLMAP多视图立体实战一组照片如何变成稠密三维模型下一篇RTX-Remix终极指南如何为经典游戏注入光线追踪新生命创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

AI应用工程化落地:Agent设计、容错与可观测性实战

AI应用工程化落地:Agent设计、容错与可观测性实战

1. 这门课到底在解决什么真问题?最近两周,我连续带了三组不同背景的学员做AI应用落地项目:一组是刚转行半年的前端工程师,想把现有SaaS产品接入智能体能力;一组是传统制造业的IT主管,需要把设备报修流程从电…

2026/9/21 2:21:16 阅读更多 →
显式游标 emp_cur 只输出一行?TaoToken 这样改 Codex config.toml 排查

显式游标 emp_cur 只输出一行?TaoToken 这样改 Codex config.toml 排查

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 2:21:16 阅读更多 →
SpringAI实战:在线考试系统知识点管理模块智能化改造

SpringAI实战:在线考试系统知识点管理模块智能化改造

1. 从一次改造聊起:知识点管理模块的痛点在哪在线考试系统做了几年,大部分模块其实都是增删改查,真正让人头疼的往往是那个看似不起眼的知识点管理模块。别的模块顶多无聊,知识点管理是既无聊又麻烦:树形结构层级一深&…

2026/9/21 2:21:15 阅读更多 →

最新新闻

STM32+MPU6050固定翼增稳飞控:从姿态解算到PID调参与救机

STM32+MPU6050固定翼增稳飞控:从姿态解算到PID调参与救机

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 3:03:40 阅读更多 →
开始使用 VUX 之前:前置知识、工具链与工程化准备

开始使用 VUX 之前:前置知识、工具链与工程化准备

UI组件前端 【免费下载链接】vux Mobile UI Components based on Vue & WeUI 项目地址: https://gitcode.com/gh_mirrors/vu/vux 点击查看 免费下载 在正式使用 VUX(Vue & WeUI 移动端 UI 组件库)之前,你不需要是一位资深…

2026/9/21 3:03:40 阅读更多 →
VitePress 接入 Headless CMS:基于动态路由与数据加载器的完整实践指南

VitePress 接入 Headless CMS:基于动态路由与数据加载器的完整实践指南

前端文档 【免费下载链接】vitepress Vite & Vue powered static site generator. 项目地址: https://gitcode.com/gh_mirrors/vi/vitepress 点击查看 免费下载 导读 本文讲解如何将 VitePress 与各类 Headless CMS(无头 CMS)对接&…

2026/9/21 3:03:40 阅读更多 →
反激变压器设计全流程:12V/1A宽压输入算例详解

反激变压器设计全流程:12V/1A宽压输入算例详解

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 3:03:40 阅读更多 →
杰理AW33N系列BLE 6.0芯片选型指南:AW332A/AW333A/AW336A/AW338A对比与避坑

杰理AW33N系列BLE 6.0芯片选型指南:AW332A/AW333A/AW336A/AW338A对比与避坑

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/21 3:03:40 阅读更多 →
KubeSphere 仓库中的 go-fuzz-headers:用字节驱动的 Go 模糊测试辅助库

KubeSphere 仓库中的 go-fuzz-headers:用字节驱动的 Go 模糊测试辅助库

后端云原生容器编排微服务 【免费下载链接】kubesphere kubesphere/kubesphere: KubeSphere 是一个开源的企业级容器平台,构建于 Kubernetes 之上,提供全栈化容器管理能力,包括服务治理、DevOps、微服务治理、监控告警、日志查询等功能&#…

2026/9/21 3:02:40 阅读更多 →

日新闻

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程

agents-generator 决策矩阵全解析:从项目检测到 AGENTS.md 规则生成的 16 步判定流程 【免费下载链接】agentic-awesome-skills AAS Core is the local, agent-first control plane for complete catalog discovery, agent-owned selection, stack validation, and …

2026/9/21 0:00:01 阅读更多 →
gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析

gin-vue-admin 前端工具函数全景指南:src/utils 复用规范与源码级解析 【免费下载链接】gin-vue-admin 🚀ViteVue3Gin拥有AI辅助的基础开发平台,企业级业务AI开发解决方案,内置mcp辅助服务,内置skills管理,…

2026/9/21 0:00:01 阅读更多 →
Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

Wox 全功能插件开发实战指南:基于 Python / Node.js 宿主与 WebSocket 的持久化插件体系

桌面应用AI 应用插件系统 【免费下载链接】Wox A cross-platform launcher that simply works 项目地址: https://gitcode.com/gh_mirrors/wo/Wox 点击查看 免费下载 全功能插件(Full-featured Plugin)是 Wox 三类插件实现方式中能力最完整的…

2026/9/21 0:00:01 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/20 0:00:46 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/20 0:00:46 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/19 23:01:36 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/19 17:50:38 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/19 23:35:34 阅读更多 →