ARTICLE · 1143190
不用编译、不装插件:如何把2万篇 Markdown 文件做成"网页版 Obsidian",并部署到NAS
我手上有 20000个 Markdown 文件。用 Obsidian 打开体验很好:左边是目录树,右边是正文,点一个卷名就跳过去。
唯一的遗憾是——它只活在我这台电脑上。我想让它变成这样:家里的 NAS 一直开着,手机、平板、电脑打开同一个地址就能翻,操作手感还跟 Obsidian 差不多。最后做到这件事的核心工具,叫 docsify。
一、docsify 是什么:一个跑在浏览器里的 Markdown 阅读器
先说最容易搞混的一点:docsify 不是网站生成器,它是阅读器。
我们熟悉的一些Markdown网页工具,做的是同一件事:把你写的 md 文件,先编译成一堆 HTML 网页,你把这堆网页传上去,别人才能看。就像把 Word 文档"另存为 PDF"——必须先转换,而且每改一次就要重新转一次。

docsify 完全相反。它不转换任何东西,而是让浏览器学会直接读 md。你在服务器上放的还是那个 .md 文件,浏览器打开时,docsify 才把它现场翻成网页。
它工作的过程只有三步,没有任何服务端计算:
① 打开页面:浏览器请求一个 index.html,里面除了几十行配置,就只有 docsify 的 JS 文件。
② 看网址要文件:docsify 根据网址里文件的位置,直接读取md文件。
③ 现场渲染:拿到 md 原文,在浏览器里转成 HTML 塞进页面。全程不生成任何新文件。
由此带来几个特性:不用装 Node、不用跑构建命令;原始 md 一个字节都不用改;新增一篇、改一篇,刷新浏览器就生效,不用重新生成整个站。

(界面效果图)
二、做出来的站点长什么样
我用它搭的是古籍阅读库,数据规模前面说了:2万余篇。打开任意一篇,看到的是这样一个页面。
1. Obsidian 式侧边栏目录树。目录是点一层加载一层(2 万篇一次性展开浏览器受不了),展开过的层级会记住,当前在读的卷高亮显示。
2. 双栏对照阅读。添加了古文翻译功能,点「白话」按键,译文出现在右侧,可以与原文对照阅读。
3. 划一句就译。同时也添加了划线翻译功能,在正文里选中一句或一段,可以翻译成白话文。
4. 移动端适配。网页做了移动端适配,手机访问地址即可,用起来跟 App 差不多。
三、在 NAS 上怎么部署
虽然都说docsify 用起来了简单,但要想达到 Obsidian的效果,可以用WorkBuddy、Qoder 这些AI工具把想要的效果编写好。
然后直接把编写好的整个项目传到 NAS 的文件夹中→ 打开 Docker,新建项目,把 compose 内容粘贴进去,点击开始部署,部署好就可以访问了。
整个项目的骨架其实只有三样东西:一个 index.html、一堆原封不动的 Markdown、一份 docker-compose.yml。数据原地不动,站点独立可备份——这就是"不编译"带来的全部好处。
如果你手上也有一堆 Markdown 想搬进浏览器,docsify 可以试一试。好了,今天就到这里,我们下期再见。