You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins部署NodeJS服务器遇npm权限错误求助

解决Jenkins部署NodeJS时的EACCES权限错误

这个错误是因为npm尝试在根目录(/)创建.npm缓存文件夹,但Jenkins执行任务的用户没有根目录的写入权限。以下是几种可行的解决办法:

  • 指定npm缓存到有权限的目录
    在执行npm install前,先设置缓存路径到Jenkins工作区(当前任务有权限操作的目录):

    npm config set cache ./npm-cache --global
    npm install
    

    或者直接在install命令里指定缓存参数:

    npm install --cache ./npm-cache
    
  • 设置HOME环境变量到工作区
    在你的Pipeline.yaml中添加环境变量配置,让npm使用工作区作为用户主目录,避免去根目录创建缓存:

    environment:
      HOME: ${WORKSPACE}
    
  • 检查Jenkins执行用户权限
    确保Jenkins运行的用户(通常是jenkins用户)对当前任务的工作目录有完整的读写权限。如果必须用高权限执行,可添加--unsafe-perm参数(谨慎使用,避免权限风险):

    npm install --unsafe-perm
    
  • 使用Jenkins NodeJS插件管理环境
    安装Jenkins的NodeJS插件,在Pipeline中指定已配置的NodeJS版本,插件会自动配置正确的环境变量和权限路径:

    tools:
      nodejs: '你的NodeJS配置名称' # 比如你在Jenkins全局工具里配置的NodeJS 18.x的名称
    

内容的提问来源于stack exchange,提问作者Shashank

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 09:25:40