gpt4 book ai didi

node.js - NodeJs Jenkins 插件无法与 dockerfile 代理一起使用

转载 作者:太空宇宙 更新时间:2023-11-03 23:49:42 25 4
gpt4 key购买 nike

我正在尝试在 Jenkins 上使用 NodeJs 插件。我关注 NodeJs document它与使用 agent any

的示例代码配合得很好
pipeline {
agent any

stages {
stage('Build') {
steps {
nodejs(nodeJSInstallationName: 'NodeJs test') {
sh 'npm config ls'
}
}
}
}
}

但是如果我使用像下面的代码这样的 dockerfile 代理

pipeline {
options {
timeout(time:1,unit:'HOURS')
}
environment {
docker_image_name = "myapp-test"
HTTP_PROXY = "${params.HTTP_PROXY}"
JENKINS_USER_ID = "${params.JENKINS_USER_ID}"
JENKINS_GROUP_ID = "${params.JENKINS_GROUP_ID}"
}
agent {
dockerfile {
additionalBuildArgs '--tag myapp-test --build-arg "JENKINS_USER_ID=${JENKINS_USER_ID}" --build-arg "JENKINS_GROUP_ID=${JENKINS_GROUP_ID}" --build-arg "http_proxy=${HTTP_PROXY}" --build-arg "https_proxy=${HTTP_PROXY}"'
filename 'Dockerfile'
dir '.'
label env.docker_image_name
}
}

stages {
stage('Build') {
steps {
nodejs(nodeJSInstallationName: 'NodeJs test') {
sh 'npm config ls'
}
}
}
}
}

它将返回npm:找不到命令错误。我的猜测是,它找不到nodejs的路径...我想尝试导出 PATH=$PATH:??我也是,但我也不知道nodejs路径。

如何让 NodeJS 插件与 dockerfile 配合使用?

最佳答案

NodeJS 插件不会将自身注入(inject)到 docker 中。但是,您可以在 dockerfile 中创建一个 ARG 构建参数,以安装要安装的 NodeJS 版本。然后,您需要阅读 nodejs 步骤

关于node.js - NodeJs Jenkins 插件无法与 dockerfile 代理一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59891846/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com