'docker-compose' 在 Jenkins 作业中执行命令时未发现错误

'docker-compose' not found error when command was executed in Jenkins job

当我尝试在 Jenkins 作业中将 docker-compose up 作为 shell 构建步骤命令执行时,我得到了响应 docker-compose: command not found。 有谁知道如何解决这个问题? Jenkins 本身托管在 CentOS 机器上。

我已经将用户 'jenkins' 添加到 'sudoers' 和用户组:root、jenkins、docker。

将您的 docker-compose 可执行文件添加到 PATH envvar。或者像这样使用完全指定的路径 /usr/local/bin/docker-compose

您必须在 Jenkins 环境中安装 docker compose。按照下面的link安装https://docs.docker.com/compose/install/

我通过在 Jenkins 文件中设置环境 PATH 变量解决了这个问题,如下所示:

  stage('test') {
            withEnv(["PATH=$PATH:~/.local/bin"]){
                    sh "bash test.sh"
                }
        }   

这是我遗漏的命令

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

我执行了那个,jenkins 很好