Jenkins构建前端报错内存溢出

关键报错信息:

关键报错信息:
--- JS stacktrace --->
13:52:10 
13:52:10 FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
13:52:10  1: 0xb09c10 node::Abort() [node]
13:52:10  2: 0xa1c193 node::FatalError(char const*, char const*) [node]
13:52:10  3: 0xcf8dde v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]
13:52:10  4: 0xcf9157 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]

 解决方案:

 1.在前端项目package.json中将打包命令修改为以下形式(设置最大内存)

"build:dev": "node --max-old-space-size=4096 ./node_modules/vite/bin/vite.js build --mode development",
"build:prod": "node --max-old-space-size=4096 ./node_modules/vite/bin/vite.js build",

修改后上传git重新构建;

 2.设置环境变量(原理同1):

export NODE_OPTIONS=–max_old_space_size=4096

 3.查看是否node版本过低,尝试高版本node运行(v12以上优化了内存机制)。 

 4.仔细检查代码,找到程序在哪些地方占用了大量的内存,优化代码的性能。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
当在Jenkins中使用管道执行Docker命令时,可能会遇到一些报错。其中两个常见的错误是: 1. "Got permission denied":这个错误是由于Jenkins用户没有执行Docker命令的权限导致的。解决方法是将Jenkins用户添加到docker组中,并重新启动Jenkins服务。可以使用以下命令实现: [usermod -a -G docker jenkins systemctl restart jenkins] 2. "touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied":这个错误是由于Jenkins没有写入/var/jenkins_home/copy_reference_file.log文件的权限导致的。这可能是由于文件系统权限问题引起的。要解决这个问题,可以尝试更改文件系统的权限。请注意确保正确设置Jenkins Home目录的权限。 以上是两种常见的Jenkins管道Docker报错以及解决方法。希望对你有所帮助。 引用自 : 执行结果 出现“Got permission denied”报错,主要是权限问题,jenkins pipeline是在master上执行的,Jenkins是由jenkins用户启动的,但是jenkins用户没有执行docker的权限,所以导致以上报错,所以我们的解决方法如下 $ usermod -a -G docker jenkins $ systemctl restart jenkins 引用自 : 这是因为jenkins默认使用jenkins用户操作,只需要将jenkins用户加入docker 组 dir('release') { sh "cat harbor_password.txt | docker login harbor-local.xxx.com --username admin --password-stdin" sh "docker build -t ${HARBOR_IMAGE} ." sh "docker push ${HARBOR_IMAGE}" sh "echo '$IMAGETAG' >> $JENKINS_HOME/workspace/CD/xxx-CD/DOCKER_TAGS" echo "===============Successfully pushed Docker Image ${HARBOR_IMAGE} .===============" echo "Cleaning up workspace..." cleanWs() } 引用自 : 如果报错 touch: cannot touch '/var/jenkins_home/copy_reference_file.log': Permission denied Can not write to /var/jenkins_home/copy_reference_file.log. Wrong volume permissions?

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

HSL379692108

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值