我正在构建GitLab CI/CD管道,使用由我的公司提供的码头nodejs映像。还有我公司提供的gitlab团队跑步者。
当作业运行npm install
命令时,我们得到以下错误
FATAL ERROR: MarkCompactCollector: young object promotion failed Allocation failed - JavaScript heap out of memory
或
FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory
快速在线搜索建议使用NODE_OPTIONS=增加内存“--最大旧空间大小=8192”
这是管道作业。我尝试过不同的语法,但没有运气。
build-job:
image: "docker.mycomapy-images/nodejs:14"
stage: build
script:
- node -v
#- export NODE_OPTIONS=--max_old_space_size=8192
#- export NODE_OPTIONS="--max-old-space-size=8192"
#- node --max-old-space-size=8192 `which npm` install
- export NODE_OPTIONS='--max-old-space-size=8192'
- npm install
- npm run build:prod
建议的其他选项是在package.json中设置。“脚本”:{“开始”:“交叉-env节点_OPTIONS=--最大旧空间大小=8192 webpack”}
上述任何选项都不起作用。
这会不会是跑步者自己的问题呢?我使用的运行程序是AWS EC2 t3a.micro实例。我相信这种情况下的内存大小是1GB。所以我认为NODE_OPTIONS不会有任何效果。
但是,在相同的运行程序上,如果我将映像更改为正式的docker映像image: node:14
,并且在本例中甚至不需要设置NODE_OPTIONS,则可以生成
我不确定这是跑步者问题还是形象问题
错误消息
发布于 2022-09-09 03:48:52
我认为这是一个图像问题,因为官方的nodejs码头图像只是命名为“节点”,而不是"nodejs“。
https://stackoverflow.com/questions/73657110
复制相似问题