microsoft / node-pty

Fork pseudoterminals in Node.JS
Other
1.47k stars 242 forks source link

Docker (Alpine): `innerError Error: Cannot find module '../build/Debug/pty.node'` #492

Closed selfagency closed 2 years ago

selfagency commented 3 years ago

Environment details

Issue description

Works fine locally, dies in Docker

innerError Error: Cannot find module '../build/Debug/pty.node'

Require stack:
- /usr/src/app/node_modules/node-pty/lib/unixTerminal.js
- /usr/src/app/node_modules/node-pty/lib/index.js
- /usr/src/app/npm-login
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:889:15)
    at Function.Module._load (internal/modules/cjs/loader.js:745:27)
    at Module.require (internal/modules/cjs/loader.js:961:19)
    at require (internal/modules/cjs/helpers.js:92:18)
    at Object.<anonymous> (/usr/src/app/node_modules/node-pty/lib/unixTerminal.js:30:15)
    at Module._compile (internal/modules/cjs/loader.js:1072:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
    at Module.load (internal/modules/cjs/loader.js:937:32)
    at Function.Module._load (internal/modules/cjs/loader.js:778:12)
    at Module.require (internal/modules/cjs/loader.js:961:19) {
  code: 'MODULE_NOT_FOUND',

  requireStack: [
    '/usr/src/app/node_modules/node-pty/lib/unixTerminal.js',
    '/usr/src/app/node_modules/node-pty/lib/index.js',
    '/usr/src/app/npm-login'
  ]
}

/usr/src/app/node_modules/node-pty/lib/unixTerminal.js:35
        throw outerError;
        ^

Error: Error loading shared library /usr/src/app/node_modules/node-pty/build/Release/pty.node: Exec format error
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1131:18)
    at Module.load (internal/modules/cjs/loader.js:937:32)
    at Function.Module._load (internal/modules/cjs/loader.js:778:12)
    at Module.require (internal/modules/cjs/loader.js:961:19)
    at require (internal/modules/cjs/helpers.js:92:18)
    at Object.<anonymous> (/usr/src/app/node_modules/node-pty/lib/unixTerminal.js:26:11)
    at Module._compile (internal/modules/cjs/loader.js:1072:14)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1101:10)
    at Module.load (internal/modules/cjs/loader.js:937:32)
    at Function.Module._load (internal/modules/cjs/loader.js:778:12)
mycve commented 3 years ago

你这个需要进入Docker里面重新执行npm build,因为pty.node不兼容

selfagency commented 3 years ago

@mycve Thank you but I did compile it inside the container

jerch commented 3 years ago

To me this looks like an issue with your build env settings. From your output this looks fishy:

Tyriar commented 3 years ago

I guess we don't support Alpine? Never tried 🤷‍♂️

Tyriar commented 2 years ago

We're willing to consider PRs to help support this, but we don't explicitly support Alpine right now.