MkDocs+Material 静态博客
纯静态博客实现方案,可以基于Github Pages类似服务免费无服务器搭建。
MkDocs
MkDocs 是一个快速、简单且彻头彻尾的华丽静态站点 用于构建项目文档的生成器。文档 源文件是用 Markdown 编写的,并使用单个 YAML 进行配置 配置文件。它的设计易于使用,可以进行扩展 第三方主题、插件和 Markdown 扩展。
Material for MkDocs
Material for MkDocs 是一个MkDocs主题,可以进行高度定制和美化。
使用Python安装Material
1 | pip install mkdocs-material mkdocs-redirects mkdocs-minify-plugin |
pip包管理器会自动安装相关依赖,安装完毕后使用mkdocs命令无报错即可
使用Git安装Material
1 | git clone https://github.com/squidfunk/mkdocs-material.git |
使用Docker安装Material
使用docker可以避免繁琐的环境配置以及各种各样的报错
此次以Linux为例:
1 | docker run --rm -it -v ${PWD}:/docs squidfunk/mkdocs-material new . |
--rm:容器运行完成后会自动删除。
创建默认站点
1 | mkdocs new . |
会自动在此目录生成以下目录结构文件
1 | . |
再次构建站点
在完成编辑后,添加新文章到mkdocs.yml配置文件,使用以下命令完成构建站点
1 | mkdocs build --clean |
如果使用docker则使用以下命令构建
--rm:容器运行完成后会自动删除。
1 | docker run --rm -it -v ${PWD}:/docs squidfunk/mkdocs-material build |
发布站点
将生成的site目录内所有文件,完整的复制到web服务器站点根目录即可
本站使用 Gitee Pages 进行托管,此次给出Github Action自动构建发布工作流配置
配置 GitHub Action 实现自动构建发布
在项目根目录新建以下目录及文件
1 | nano .github/workflows/ci.yml |
写入以下内容:
1 | name: Publish site |
如果你使用 Github Action,可以跳过构建的过程,因为当你 Push 到GitHub时 会自动帮你构建一个新的分支 gh-pages
本地部署则需要将 site 目录作为网站根目录
使用 Github Pages 托管
新建GitHub仓库
仓库名称:{username}/{username}.github.io
将以上文件推送至仓库,并配置相关的Github Pages 即可在相应网址查看
实时编写预览
mkdocs包含一个实时预览服务,因此你可以边写边预览,当你保存时他会自动渲染,使用以下命令启动服务:
1 | mkdocs serve |
它会启动一个web服务,输出如下:
1 | INFO - Building documentation... |
相关链接:
Yang-Xijie
重要更新提示
- Material 9.x 版本需要 Python ≥3.8
- 默认分支从
master改为main - 新增安全策略需在GitHub Pages设置中手动启用
- 推荐安装质量监控插件:
1
pip install mkdocs-broken-links-plugin mkdocs-monorepo-plugin
相关链接更新:
- Title: MkDocs+Material 静态博客
- Author: 清夏晚风
- Created at : 2026-01-13 16:48:23
- Updated at : 2026-01-13 16:48:23
- Link: https://blog.kimikkorow.eu.org/博客系统相关/MkDocs+Material/MkDocs+Material 静态博客/
- License: This work is licensed under CC BY-NC-SA 4.0.