Nx with Next.js (integrated monorepo) - the standalone directory missing a server.js file.

0

Hi,

I'm struggling with problem connected with hosting on AWS Amplify my app Next.js app from Nx integrated monorepo. Main problem (at least in my opinion) is with locating by Amplify server.js file which is not located where expected by default (directly in standalone directory) but deeper in standalone/apps/the-foxxes-music. I have no idea how to define this path and Im receiving error log like this:

2023-05-24T06:29:54.974Z [INFO]: # Completed phase: build
                                 ## Completed Frontend Build
2023-05-24T06:29:54.976Z [INFO]: ## Build completed successfully
2023-05-24T06:29:54.977Z [INFO]: # Starting caching...
2023-05-24T06:29:54.987Z [INFO]: # Creating cache artifact...
2023-05-24T06:30:03.617Z [INFO]: # Created cache artifact
2023-05-24T06:30:03.700Z [INFO]: # Uploading cache artifact...
2023-05-24T06:30:08.144Z [INFO]: # Uploaded cache artifact
2023-05-24T06:30:08.267Z [INFO]: # Caching completed
2023-05-24T06:30:08.270Z [INFO]: Setting NEXT_PRIVATE_STANDALONE=true to produce .next/standalone directory
2023-05-24T06:30:08.274Z [INFO]: # No custom headers found.
2023-05-24T06:30:08.278Z [ERROR]: !!! CustomerError: The standalone directory /codebuild/output/src950288398/src/the-foxxes-music/dist/apps/the-foxxes-music/.next/standalone is missing a server.js file. This file shoud have been created automatically by NextJS. Make sure you enable output standalone on your next.config.js file or set NEXT_PRIVATE_STANDALONE=true. https://nextjs.org/docs/advanced-features/output-file-tracing#automatically-copying-traced-files
2023-05-24T06:30:08.278Z [INFO]: # Starting environment caching...
2023-05-24T06:30:08.278Z [INFO]: # Environment caching completed
Terminating logging...

My yml:

version: 1
frontend:
  phases:
    preBuild:
      commands:
        - npm ci
    build:
      commands:
        - npm run build
  artifacts:
    baseDirectory: dist/apps/the-foxxes-music/.next
    files:
      - '**/*'
  cache:
    paths:
      - node_modules/**/*

My next.config.js:

//@ts-check

// eslint-disable-next-line @typescript-eslint/no-var-requires
const { composePlugins, withNx } = require('@nx/next');
const path = require('path');

/**
 * @type {import('@nx/next/plugins/with-nx').WithNxOptions}
 **/
const nextConfig = {
  nx: {
    // Set this to true if you would like to use SVGR
    // See: https://github.com/gregberge/svgr
    svgr: false,
  },
  output: 'standalone',
  experimental: {
    outputFileTracingRoot: path.join(__dirname, '../../'),
  },
};

const plugins = [
  // Add more Next.js plugins to this list if needed.
  withNx,
];

module.exports = composePlugins(...plugins)(nextConfig);

And output structure: Output structure

HELP PLEASE! :(

preguntada hace un año98 visualizaciones
No hay respuestas

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas