Skip to content

Error when running production build with express when dev deps are not installed #13234

@sanisoclem

Description

@sanisoclem

I'm using React Router as a...

framework

Reproduction

  1. run npx create-react-router@latest repro to create a new project
  2. copy the server.js from this example: https://github.com/remix-run/react-router/blob/08e4f2fd399543cab776f4be8a29181093a3702c/playground/framework-express/server.js
  3. install missing packages: npm install --save express morgan compression cross-env
  4. update npm start to: "start": "cross-env NODE_ENV=production node ./server.js"
  5. build the docker image: docker build . -t repro
  6. run image docker run -p 3000:3000 repro

minimal repro: https://github.com/sanisoclem/rr7-express-repro

System Info

System:
    OS: Windows 11 10.0.26100
    CPU: (32) x64 AMD Ryzen 9 7950X3D 16-Core Processor
    Memory: 37.08 GB / 63.14 GB
  Binaries:
    Node: 22.11.0 - C:\Program Files\nodejs\node.EXE
    npm: 10.9.0 - C:\Program Files\nodejs\npm.CMD
    pnpm: 9.15.2 - C:\Program Files\nodejs\pnpm.CMD
  Browsers:
    Edge: Chromium (127.0.2651.74)
    Internet Explorer: 11.0.26100.1882
  npmPackages:
    @react-router/dev: ^7.3.0 => 7.3.0
    @react-router/node: ^7.3.0 => 7.3.0
    @react-router/serve: ^7.3.0 => 7.3.0
    react-router: ^7.3.0 => 7.3.0
    vite: ^5.4.11 => 5.4.14

Used Package Manager

npm

Expected Behavior

server starts

Actual Behavior

server fails to start with error:

start
cross-env NODE_ENV=production node ./server.js

node:internal/modules/cjs/loader:1215
throw err;
^

Error: Cannot find module '/app/server.js'
at Module._resolveFilename (node:internal/modules/cjs/loader:1212:15)
at Module._load (node:internal/modules/cjs/loader:1043:27)
at Function.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:164:12)
at node:internal/main/run_main_module:28:49 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}

Node.js v20.19.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions