Jenkins 安装 NodeJS 插件后无法识别Node环境:env node No such file or directory

这篇具有很好参考价值的文章主要介绍了Jenkins 安装 NodeJS 插件后无法识别Node环境:env node No such file or directory。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

分析:

经验证,该问题在使用Jenkins官方文档中推荐的docker镜像jenkinsci/blueocean才会出现。

docker run \
  -u root \
  --rm \
  -d \
  -p 8080:8080 \
  -p 50000:50000 \
  -v jenkins-data:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  jenkinsci/blueocean

我的解决方法:

改用最新的Jenkins docker镜像就不会遇到:

我安装的是最新的Jenkins docker镜像:

docker pull jenkins/jenkins:lts

然后运行镜像:

docker run \
  -u root \
  -d \
  -p 8080:8080 \
  -p 50000:50000 \
  -v jenkins-data:/var/jenkins_home \
  -v /var/run/docker.sock:/var/run/docker.sock \
  jenkins/jenkins:lts

注意docker run时,镜像名为jenkins/jenkins:lts,而不是jenkins/jenkins。两者不同。

原因推测

为什么jenkinsci/blueocean镜像会出现这个问题还未定位到。

但在试错的过程中有如下发现:

  1. jenkinsci/blueocean镜像基于Alpine Linux系统;jenkins/jenkins:lts基于Debian系统
  2. jenkinsci/blueocean的shell是ash,即阉割版的bash;而jenkins/jenkins:lts时完整的bash。可通过vi /etc/passwd命令查看
  3. 起初怀疑是软连接的原因。但是按照网上的说法进行配置,还是不行。后来发现jenkinsci/blueocean镜像无法通过./node来运行(Ubuntu/Debian可以)。因此怀疑jenkinsci/blueocean镜像的shell无法运行Node支持程序。
  4. ash视乎无法识别Node二进制文件(执行程序)的路径:node.js - 在 Jenkins docker 实例上找不到 Node - IT工具网 (coder.work)。因此,我参考文章Understanding /etc/passwd File Format - nixCraft (cyberciti.biz),尝试在Alpine Linux系统中安装bash,但是还是不行。

至此,我只能怀疑是jenkinsci/blueocean镜像采用的Alpine Linux系统的问题。按理来说,Alpine Linux系统是可以安装使用NodeJS的,由于我只是使用过Ubuntu,所以不能确定。所以大概率是jenkinsci/blueocean镜像封装Alpine Linux系统时本身的BUG。

最后

目前,通过替换Jenkins Docker的镜像可以避免env node No such file or directory问题。但是为什么jenkinsci/blueocean会出现这个问题,我并没有定位到。期待大佬们的解惑。文章来源地址https://www.toymoban.com/news/detail-724729.html

到了这里,关于Jenkins 安装 NodeJS 插件后无法识别Node环境:env node No such file or directory的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue - vue中的process.env.NODE_ENV和环境变量

    process.env 是 Node.js 中的一个环境对象。其中保存着系统的环境的变量信息。可使用 Node.js 命令行工具直接进行查看。如下: 而 NODE_ENV 就是其中的一个环境变量。这个变量主要用于标识当前的环境(生产环境,开发环境)。默认是没有这个环境变量的,需要自己手动配置。 在

    2024年02月14日
    浏览(28)
  • Jenkins 中部署Nodejs插件并使用,并构建前端项目(3)

    遇到多个版本nodeJS需要构建的时候 1、第一种就是一个配置安装,然后进行选中配置 2、第二种就是插件:nvm-wrapper,我们还是选用NodeJS插件: (1)可以加载任意npmrc文件; (2)与Jenkins结合紧密,封装少,项目相对活跃; (3)功能丰富,可全局安装模块。 这里的路径,要把

    2024年02月22日
    浏览(37)
  • vite4生产环境打包报错NODE_ENV=production is not supported in the .env file.

    vue3+vite4生产环境production打包报错: 大致意思就是: NODE_ENV=.ENV文件中不支持生产。仅支持NODE_ENV=开发来创建项目的开发构建。如果需要设置process.env.NODE_env,则可以在Vite配置中进行设置。 ** ** 如果有警告 那就把vite.config.js里面的minify换成:terser(别忘记install下载了)

    2024年02月11日
    浏览(50)
  • Windows环境下NVM安装后Node/NPM命令无法使用

    问题:Windows环境下安装nvm后,无法使用nvm安装nodejs 官网下载nvm安装包,Releases · coreybutler/nvm-windows (github.com) 点击exe安装包,将目录修改为非系统盘(C)例如:D:SoftWorknvm,同时nodejs的安装目录选择和nvm同目录下例如:D:SoftWorknodejs 在Windows图标右键找到终端Windows PowerShell管

    2024年02月06日
    浏览(50)
  • k8s环境jenkins发布vue项目指定nodejs版本

    发布一个前端项目,它需要nodejs 16.9.0版本支持,而kubesphere 3.2.0集成的jenkins 的镜像只支持nodejs v10.16.3 该项目基于的环境是k8s 1.23.4,docker 20.10.12. vue 2.7 Jenkins Kubernetes插件 kubesphere 平台安装了jenkins ,基于Jenkins Kubernetes插件,自动化在Kubernetes中运行的Jenkins-slave代理的缩放。该插件

    2024年02月09日
    浏览(35)
  • jenkins 中配置Node环境

    下载nodejs插件安装并重启否则当前jenkins环境中无node环境。 安装之后可在已安装的tab中查看 下载完之后进入全局工具配置界面 此时node环境还未安装,需要创建一个自由风格项目去安装node 在配置中的构建环境中 但此时的node还不是全局环境的Node. 可以在别的任务中查看node

    2024年02月12日
    浏览(30)
  • Linux下安装nodeJS,并在jenkins下配置

    jenkins服务器下安装nodejs报错: 安装的nodejs版本: linux系统版本: 经查找是版本不匹配,可通过降低nodejs的版本避免报错。 1)进入Linux服务器的目录,执行下载,命令为 2)压缩包解压,命令 3)重命名刚解压的文件夹为nodejs 耐心等待安装,出现提示输入y即可; 4)打开环境

    2024年02月02日
    浏览(32)
  • Jenkins环境配置篇-更换插件源

    作为持续集成的利器 Jenkins 已经得到了广泛地应用,仅仅作为一个工具,Jenkins 已然有了 自己的生态圈,支持其的 plugin 更是超过 1300+。在实际中如何使用以及如何更好地使用 jenkins,一直是大家在实践并讨论的。本系列文章将会从如何使用 jenkins 方面对一些细节 进行总结和

    2024年01月21日
    浏览(31)
  • 七、docker-compose方式运行Jenkins,更新Jenkins版本,添加npm node环境

    一、docker-compose方式安装运行Jenkins 中发现Jenkins版本有点老,没有node环境,本节来说下更新jenkins 及添加构建前端的node环境。

    2024年02月16日
    浏览(37)
  • 解决conda创建环境,环境路径并非是conda安装目录下的envs或我们设置的目录

    有些同学可能遇到使用conda创建环境,环境的路径总是在C盘,但是明明conda安装在D盘,而且配置文件的默认路径也是D盘。其实原因很简单,因为设置的默认路径没有足够的权限。 1.怎么查看默认的目录呢 第一种方法: 找到 .condarc 文件,一般在 C:Usersadministrator.condarc ,以文

    2024年02月11日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包