docmd 0.7.2 版本引入了 docmd deploy 命令——一个配置感知的部署脚手架工具,它会读取你的项目配置并生成针对项目量身定制的生产级服务器配置文件。

没有任何其他文档工具能做到这一点。Docusaurus、VitePress、MkDocs——它们都需要你从零开始手动编写 Dockerfile 和服务器配置。docmd 读取你的 docmd.config.js(或零配置默认值),生成的文件即可直接上线。

docmd deploy — 配置感知部署

一条命令即可生成为你项目量身定制的生产级部署文件:

docmd deploy --docker   # Dockerfile + .dockerignore
docmd deploy --nginx    # nginx.conf
docmd deploy --caddy    # Caddyfile

智能之处

deploy 命令会在生成前读取你的配置,提取以下信息:

  • 项目标题 — 作为注释头写入每个生成的文件中
  • 输出目录 (out) — 用于 Dockerfile 的 COPY 路径、Nginx/Caddy 的 root 指令,取代硬编码的值
  • 站点 URL (url) — 提取的主机名注入为 Nginx 的 server_name 或 Caddy 的站点地址
  • SPA 模式 (layout.spa) — 仅在 SPA 模式激活时才生成 try_files SPA 路由回退
  • 配置文件路径 — 如果使用非默认配置文件名,Dockerfile 构建步骤会运行 docmd build --config your-config.js

没有 docmd.config.js?命令依然可以正常工作——它会使用与 docmd devdocmd build 相同的零配置默认值。

始终同步

每次运行都会重新生成部署文件以匹配你当前的配置。修改了 urlout 目录?只需重新运行 docmd deploy --nginx。你的配置始终反映项目的最新状态。

生成文件的质量

  • Docker:多阶段构建,具备 package.json 层缓存和精确的 @docmd/core 版本锁定,确保可复现构建
  • Nginx:安全头(X-Content-Type-OptionsX-Frame-Options)、GZIP 压缩、不可变资产缓存
  • Caddy:支持 HTTPS 的自动寻址、安全头、SPA 路由、静态资产缓存

🛡️ 7 大支柱 Failsafe 验证

内部验证引擎已重构为 7 个逻辑稳定性支柱,包含全新的动态完整性引擎,能即时捕捉整个 Monorepo 中的版本不匹配问题。

🌍 全球生态系统扩展

本次发布包含重大的本地化更新:

  • 原生语言支持:核心引擎新增了德语、西班牙语、日语和法语的内置 UI 翻译——这些语言开箱即用,适用于所有 UI 组件。
  • 德语文档上线:完整的文档套件现已支持德语 (/de/)。

📝 完整更新日志

🚀 功能与增强

  • 新命令docmd deploy,支持 --docker--nginx--caddy 目标。
  • 配置感知脚手架:deploy 命令读取 docmd.config.js(或零配置默认值),用项目标题、输出目录、主机名、SPA 模式和配置路径定制生成文件。
  • 始终最新的配置:部署文件在每次运行时重新生成,与配置变更保持同步。
  • Docker 脚手架:多阶段 Dockerfile,具备 package.json 层缓存和版本锁定的 @docmd/core
  • Web 服务器脚手架:强化的 Nginx 和 Caddy 模板,包含安全头、GZIP 和智能 404/SPA 路由。
  • 统一配置标签:所有内部模块(SEO、站点地图、LLMS、PWA、部署器、生成器)现在统一使用现代配置键(config.titleconfig.urlconfig.outconfig.src),不再使用分散的旧版回退。默认值在 normalizeConfig 中统一定义——唯一的事实来源。
  • Failsafe:验证逻辑合并为更快、更专业的 7 阶段流水线。
  • 版本控制:全新的完整性引擎自动标记过时的内部工作区引用。
  • SEO 插件:完全遵循 titleAppend frontmatter 属性用于社交媒体(OG/Twitter)元数据。
  • 原生支持:核心引擎新增德语、西班牙语、日语和法语的内置 UI 翻译。
  • 本地化:新增完整的德语文档翻译,优化中文文档翻译。

🐛 问题修复

  • Deploy CLI:修复通过 pnpm 代理脚本使用 --cwd 时的参数解析问题。
  • Deploy UX:未知参数现在显示有用的使用摘要,而不是带有退出码 1 的原始错误。
  • Caddy 配置:修正了 Caddyfile 兼容性的 Cache-Control 头部语法。
  • Bump 脚本:修复了 scripts/bump.js 中的正则 lastIndex 漏洞。
  • CLI 安全:为所有部署命令入口点添加了适当的异步错误处理。
  • 在线编辑器:修复移动端溢出问题和模板切换状态追踪。

迁移指南

最终用户:无破坏性更改。更新后尝试 docmd deploy,生成针对你项目定制的部署配置。

插件作者:无需任何操作。