我的 Docker 示例现已成为官方 Next.js 文档的一部分

发布: (2026年3月4日 GMT+8 15:14)
2 分钟阅读
原文: Dev.to

Source: Dev.to

我一直相信开源的力量。我们每天使用的许多工具之所以存在,都是因为开发者选择将自己的工作分享给世界。能够回馈社区是我非常看重的事。

添加的内容

with-docker(现代化)

此示例已完全现代化,现已展示在 2026 年真实的 Next.js 应用应如何构建和部署。

关键改进

  • 使用 App Router
  • 完全使用 TypeScript 编写
  • 使用 Tailwind CSS v4 进行样式化
  • 多阶段 Docker 构建
  • 支持 Node.js 与 Bun 运行时选项
  • 带有 profiles 的 Docker Compose
  • BuildKit 缓存挂载
  • 生产级文档
  • 通过非 root 用户进行安全加固
  • 明确说明 Node.js 镜像的选择(Slim vs Alpine)

它取代并合并了旧的 with-docker-standalone-output 示例,成为参考架构而非最小化演示。

文档: https://nextjs.org/docs/app/getting-started/deploying

with-docker-export-output(新)

此示例演示了使用 output: "export" 生成完整静态站点的另一种部署策略。

生产就绪的服务选项

  • 选项 A – Nginx(生产级)

    • 使用 nginxinc/nginx-unprivileged
    • 优化的 nginx.conf
    • Gzip 压缩
    • 正确的缓存头
    • 注重安全的配置
  • 选项 B – 使用 serve npm 包的 Node.js 服务

    • 更简洁的设置
    • 基于 Node 的服务
    • 适合轻量级部署

共通特性

  • 多阶段构建
  • BuildKit 缓存挂载
  • Docker Compose profiles
  • 详细文档解释权衡

文档: https://nextjs.org/docs/app/getting-started/deploying

将这些 Docker 示例贡献到官方的 Next.js 仓库,是社区的一个重要里程碑。

0 浏览
Back to Blog

相关文章

阅读更多 »

AI、人类与我们打破的循环

🌅 经验的回响 — 站在地平线 曾经有一段时间,混沌塑造了我。但当我真正选择了自己——真正选择了自己——一切都改变了。我…