写公众号不用再手动排版:飞牛 NAS 用一个容器装 doocs/md,Markdown 实时出公众号样式,配内网穿透在公司也能写
作者
小编
发布时间

项目介绍
doocs/md 是一个开源的微信公众号 Markdown 编辑器。左边写 Markdown,右边实时渲染成公众号文章的样子:标题、引用、列表、代码块、表格都替你排好,写完点一下「复制」,到公众号后台直接粘贴,排版原样带过去,不用再在公众号编辑器里一段一段地调格式。
样式也能在页面上直接换:「样式」菜单里有几套主题(经典、优雅、简洁),主题色、字体、字号、代码块的配色都能点着换,右边的预览跟着整篇一起变。
它是一个纯前端的网页应用,官方镜像只有几兆,里面就是一个出静态文件的 nginx。你写的稿子和你选的样式都存在你自己浏览器的本地存储里,服务器上一个字都不存 —— 这一点后面还会提到,很关键。
项目地址:doocs/md
部署安装
装在 NAS 上之后,默认只有家里的网络能打开。可写公众号这件事,常常是在公司、在路上想到就写,只能在家用就少了一大半意义。家里没有公网 IP 的话,可以用 帕斯内网穿透 把它开放到公网,飞牛的应用中心里就能直接装到插件。具体操作可以参考 这份全平台上手指南。下面这套流程在飞牛 NAS 上从头到尾走一遍。
第一步:准备编排文件
下面这份编排可以直接用,一共就这几行:
1services:2 md:3 image: doocs/md:latest4 container_name: mdeditor5 ports:6 - "3421:80"7 restart: unless-stopped8
要认的只有一处:ports 那一行冒号左边的 3421,是待会儿在浏览器里输的端口,也是建隧道时要填的那个;右边的 80 是容器里 nginx 监听的端口,不要动。3421 如果被别的容器占了,换一个没用过的即可。
注意:网上有些教程写的是「容器端口 3000」,那是旧的说法。官方镜像现在的容器端口是 80,按 3000 去映射的话容器是起来了,浏览器打开却是连接被拒绝。
这份编排里没有挂任何目录 —— 因为它根本不在服务器上存东西,稿子都在你的浏览器里,挂了也是空的。
第二步:在飞牛上建 Compose 项目
打开飞牛的 Docker 应用,切到 Compose,点右上角的新增项目。项目名称填 mdeditor。
路径这一栏点开,在「我的文件」下面挑一个空文件夹选中 —— 这个文件夹以后就是这个项目的家。
来源选「创建 docker-compose.yml」,把上面那份编排整段贴进去。
下面「创建项目后立即启动」勾上,点创建。镜像很小,一下就拉完了,列表里状态变成「正在运行」就好了。
在家里的网络上打开 http://你的NAS地址:3421,看到左边是示例 Markdown、右边是排好版的文章,就说明装好了。
第三步:用内网穿透开放到公网
在飞牛的应用中心里搜 PassNAT,装上,账号登一次。打开插件点创建隧道:名字随便起;传输协议选 HTTP;子域名自己起一个;本地 IP 留空就好,默认就是 127.0.0.1,不用去查 NAS 的局域网地址;本地端口填上面那个 3421。点创建,列表里就多了这一条。
选 HTTP 是因为选了它之后表单上会多出「子域名」和一个顶级域名的下拉 —— 填一个没人用过的子域名、在下拉里挑一个顶级域名,拿到的公网地址就是一个网址,而不是一串 IP 加随机端口。子域名是全平台唯一的,填一个太常见的词多半会提示已存在,换一个就行。
建好之后点开这条隧道,最左边是电源键,按一下,状态转成「运行中」,上面那个网址就是在外面用的地址。
这一期没有给隧道加「网页访问用户名 / 密码」:这个编辑器服务端不存任何东西,别人就算打开了你的地址,看到的也只是他自己浏览器里的空白稿子,碰不到你写的任何一个字。
怎么用
写稿
第一次打开,左边是它自带的一篇示例文章。按 Ctrl+A 全选删掉,把你写好的 Markdown 贴进去,右边当场就排好了。标题、引用、列表、代码块、表格都有现成的样式。
换样式
顶上的「样式」菜单里,「主题」有经典、优雅、简洁三套,「主题色」有十来种颜色,还有字体、字号、行距、代码主题。点一下,右边整篇跟着变,不满意再换回来就行。
复制进公众号
写完点右上角的「复制」,会提示「已复制渲染后的内容到剪贴板,可直接到公众号后台粘贴」。到公众号后台的编辑器里直接粘贴,排版原样带过去。
公众号正文里的外链是点不开的。如果稿子里有链接,可以用「格式」菜单里的「外链转引用」,把链接变成文末的引用列表,读者至少能看到地址。
几件用之前值得知道的事
🔴 稿子存在浏览器里,不在 NAS 上。浏览器的本地存储是按网址分开的,所以在家用局域网地址写的稿子,换成公网地址打开是看不到的;换一台电脑、换一个浏览器,也都是一篇新的。写完记得复制走,或者用「文件」菜单里的「导出」存一份 Markdown 文件。
清浏览器缓存、用无痕窗口,也会让稿子消失。重要的稿子别只放在这里。
界面上的「账户」「云同步」「分享预览」这几样,需要登录上游作者提供的云端服务,不是你 NAS 上的东西;不登录一样能写、能换样式、能复制,本文用到的每一步都不需要登录。
图床和 AI 助手也都要你自己另外配账号或密钥,本文没有用到。