exec:“cat”:在 $PATH 中找不到可执行文件:未知。'

问题描述 投票:0回答:1

无法运行镜像 docker.io/hadolint/hadolint:v2.8.0 。错误:docker:来自守护进程的错误响应:无法为容器创建任务:无法创建 shim 任务:OCI 运行时创建失败:运行 c 创建失败:无法启动容器进程:exec:“cat”:$ 中找不到可执行文件路径:未知。

但是当我将“docker.io/hadolint/hadolint:v2.8.0”更改为版本“docker.io/hadolint/hadolint:v1.18.0”时

,没有错误

这是我的 Jenkins 管道,

        stage("Lint") {
            agent {
                docker {
                    image "docker.io/hadolint/hadolint:v2.8.0"
                   
                    reuseNode true
                }
            }
            steps {
                script {
                    def result = sh label: "Lint Dockerfile",
                        script: """\
                            hadolint Dockerfile > hadolint-results.txt
                        """,
                    returnStatus: true
                    if (result > 0) {
                        unstable(message: "Linting issues found")
                    }
                }
            }
        }
bash path version cat bin
1个回答
0
投票

Jenkins 中的 docker 插件尝试在容器中启动

cat
,以在执行脚本时保持容器运行。
:v2.8.0
图像中没有
cat
(它是临时图像),因此无法以相同的方式在 Jenkins 中运行。

正确的解决方案取决于您的 Jenkins 版本和 docker 插件。

参见 https://issues.jenkins.io/browse/JENKINS-39748

© www.soinside.com 2019 - 2024. All rights reserved.