为技术项目量身定做的文档工具MkDocs
什么是 MkDocs ?
MkDocs
是一款快速、简单且极其出色的静态网站生成器,专门用于构建项目文档。文档源文件以Markdown
编写,并使用单个YAML
配置文件进行配置。它易于使用,并且可以使用第三方主题、插件和Markdown
扩展进行扩展。
软件的主要特点:
- Markdown 支持:
MkDocs
支持标准的Markdown
语法,使得编写文档变得简单快捷。 - 主题丰富:
MkDocs
提供了多种预设主题,用户可以选择一个主题来定制文档的外观和感觉。 - 导航栏:
MkDocs
可以自动生成一个导航栏,方便用户在不同页面间导航。 - 版本控制:
MkDocs
支持文档的版本控制,可以为不同版本的项目维护不同的文档集。 - 插件系统:
MkDocs
拥有一个插件系统,允许用户扩展其功能,例如添加自定义的导航栏、搜索功能等。 - 国际化:
MkDocs
支持多语言文档,可以为不同语言的用户提供本地化的文档。 - 部署简单:生成的文档是静态
HTML
文件,可以部署在任何静态文件服务器上,包括GitHub Pages
。 - 实时预览:
MkDocs
提供了一个开发服务器,可以在编写文档时提供实时预览,方便查看文档效果。 - 配置灵活:
MkDocs
的配置文件(通常是mkdocs.yml
)允许用户定制网站的各种设置,如标题、描述、URL
等。 - 社区支持:作为一个流行的开源项目,
MkDocs
拥有一个活跃的社区,提供帮助和支持。 - 易于使用:
MkDocs
的安装和使用都非常简单,通过Python
的包管理器pip
即可安装。 - 扩展性:用户可以通过编写自定义脚本或使用社区提供的扩展来进一步定制
MkDocs
的行为。
什么是 Material for MkDocs ?
Material for MkDocs
是基于MkDocs
的强大文档框架。支持docker
部署方式。
新建文档
在群晖上以 Docker 方式运行。
首先要在指定的目录中,创建项目文档及配置文件
1 | # 新建文件夹 mkdocs 和 子目录 |
根目录下会生成 mkdocs.yml
docs
目录中会生成 index.md
新建的 mkdocs.yml
只有一行
1 | site_name: My Docs |
我们可以根据需要进行修改,例如下面👇这样
1 | site_name: My Docs |
因为包含了了中文,所以记得采用
UTF-8
格式保存
实时预览
MkDocs
包含一个实时预览服务器,因此您可以在编写文档时预览更改。
1 | # 边写边预览 |
在浏览器中输入 http://群晖IP:5065
就能看到主界面
你在 index.md
上做的任何修改,不需要刷新页面,会显示出来
接下来我们要做的是研究 MkDocs
的高级配置,https://squidfunk.github.io/mkdocs-material/creating-your-site/#advanced-configuration,来研究如何改颜色、改字体、设置版本控制等
生成站点
完成编辑后,你可以使用以下命令从 Markdown
文件构建静态站点
1 | docker run -it \ |
会在根目录生成 site
子目录
此目录的内容构成了您的项目文档。无需操作数据库或服务器,因为它是完全独立的。该网站可以托管在 GitHub Pages
、GitLab Pages
、您选择的 CDN
或您的私人网络空间上
参考文档
mkdocs/mkdocs: Project documentation with Markdown.
地址:https://github.com/mkdocs/mkdocsMkDocs
地址:https://www.mkdocs.org/squidfunk/mkdocs-material - Docker Image | Docker Hub
地址:https://registry.hub.docker.com/r/squidfunk/mkdocs-material/Creating your site - Material for MkDocs
地址:https://squidfunk.github.io/mkdocs-material/creating-your-site/