【问题标题】:Could not find a production build in the '/app/.next' directory. Try building your app with 'next build' before starting the production server在 \'/app/.next\' 目录中找不到生产版本。在启动生产服务器之前尝试使用 \'next build\' 构建您的应用程序
【发布时间】:2022-08-07 22:16:09
【问题描述】:

运行 next.js 应用映像时出现错误 :

准备就绪 - 在 0.0.0.0:3000 上启动服务器,网址:http://localhost:3000

错误:在 \'/app/.next\' 目录中找不到生产版本。在启动生产服务器之前,尝试使用 \'next build\' 构建您的应用程序。 https://nextjs.org/docs/messages/production-start-no-build-id 在 NextNodeServer.getBuildId (/app/node_modules/next/dist/server/next-server.js:137:23) 在新服务器 (/app/node_modules/next/dist/server/base-server.js:93:29) 在新的 NextNodeServer (/app/node_modules/next/dist/server/next-server.js:86:9) 在 NextServer.createServer (/app/node_modules/next/dist/server/next.js:109:16) 在异步 /app/node_modules/next/dist/server/next.js:121:31 npm 错误!代码生命周期 npm 错误!错误号 1 npm 错误! anubis-aio@0.1.0 开始:next start npm 错误!退出状态 1 npm 错误! npm 错误!在 anubis-aio@0.1.0 启动脚本中失败。 npm 错误!这可能不是 npm 的问题。上面可能有额外的日志输出。 npm 错误!可以在以下位置找到此运行的完整日志: npm 错误! /root/.npm/_logs/2022-05-11T12_32_58_222Z-debug.log

Dockerfile:

FROM node:14-alpine AS deps
WORKDIR /app

COPY package.json ./
RUN npm install
COPY . .



FROM node:14-alpine AS builder
WORKDIR /app
COPY --from=deps /app ./
RUN npm build


FROM node:14-alpine AS runner
WORKDIR /app

COPY --from=builder /app/package*.json ./
COPY --from=builder /app/public ./public
COPY --from=builder /app/.next ./.next
RUN npm install next

EXPOSE 3000
CMD [\"npm\",\"run\",\"start\"]

我需要在 dockerignore 中添加 .next 吗?这样做会在构建图像时给我一个错误

  • 您的意思是改为运行npm run build 吗?
  • 是的,但这也不起作用

标签: docker next.js dockerfile


【解决方案1】:

2022 年更新

请查看vercel的官方示例如何使用nextjs和docker:https://github.com/vercel/next.js/tree/canary/examples/with-docker

他们不使用npm run start,而是使用node server.js

不要只是复制 Dockerfile... 在 next.config 中查找 standalone 参数,在 package.json 中查找 nextjs 版本。

在下一个 js 12.1.6 中,next.config 应该是:

module.exports = {
  eslint: {
    ignoreDuringBuilds: true,
  },
  experimental: {
    outputStandalone: true
  }
}

【讨论】:

    猜你喜欢
    • 2021-12-24
    • 2018-09-15
    • 2022-01-13
    • 1970-01-01
    • 1970-01-01
    • 2022-01-14
    • 2021-03-04
    • 1970-01-01
    • 2022-07-14
    相关资源
    最近更新 更多