'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 很好
当我尝试在 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 很好