docker nodejs - 返回非零代码:134

问题描述 投票:0回答:1

我有这个非常简单的dockerfile:

FROM node:lts AS runtime
WORKDIR /app

COPY . .

RUN npm install --verbose
RUN npm run build

ENV HOST=0.0.0.0
ENV PORT=3000
EXPOSE 3000
CMD node ./dist/server/entry.mjs

docker-compose.yml

version: '3'
services:
  xxxxxx:
    build: .
    ports:
      - "3000:3000"

我在我的 Mac 上进行了本地测试,没有问题。 但是当我转移到我的 ubuntu 服务器并运行

sudo docker-compose up
时,我收到此错误:

  #  node[7]: std::unique_ptr<long unsigned int> node::WorkerThreadsTaskRunner::DelayedTaskScheduler::Start() at ../src/node_platform.cc:68
  #  Assertion failed: (0) == (uv_thread_create(t.get(), start_thread, this))

----- Native stack trace -----

 1: 0xe2fcd7 node::Assert(node::AssertionInfo const&) [node]
 2: 0xeb54ce node::WorkerThreadsTaskRunner::WorkerThreadsTaskRunner(int) [node]
 3: 0xeb55ac node::NodePlatform::NodePlatform(int, v8::TracingController*, v8::PageAllocator*) [node]
 4: 0xdd22b6  [node]
 5: 0xdd37b4 node::Start(int, char**) [node]
 6: 0x7f513d15624a  [/lib/x86_64-linux-gnu/libc.so.6]
 7: 0x7f513d156305 __libc_start_main [/lib/x86_64-linux-gnu/libc.so.6]
 8: 0xd2717e _start [node]
Aborted (core dumped)
ERROR: Service 'xxxxxx' failed to build: The command '/bin/sh -c npm install --verbose' returned a non-zero code: 134

我用谷歌搜索了几轮,只找到了一个论坛命令提到的可能是

node
版本问题。我检查了我的本地版本是
21.5
,所以我更改了
dockerfile

from node:21.7

仍然遇到同样的问题。

运行时出现错误

npm install

这里似乎有什么问题?我该如何解决这个问题?

node.js docker
1个回答
0
投票

我认为日志缺少信息。根据经验,我认为你的问题是服务器内存不足。

理想的情况是您在计算机上编译映像并将映像拉取到服务器,而无需在服务器上重新编译它。

通过更改NPM内存参数来执行测试。

npm install - javascript 堆内存不足

© www.soinside.com 2019 - 2024. All rights reserved.