Jenkins管道中的“ docker-compose:未找到”。尝试为环境添加路径

我在我的DigitalOcean Droplet上的Docker中运行Jenkins。当我的Jenkinsfile运行“ docker-compose build”时,我收到了 line 1: docker-compose: not found尝试构建时。

我的第一个问题是,如果我用docker-compose文件中的/var/run/docker.sock:/var/run/docker.sock挂载卷,我仍然需要 将CLI添加到我的Dockerfile中?

RUN curl -fsSLO https://get.docker.com/builds/Linux/x86_64/docker-17.04.0-ce.tgz \
  && tar xzvf docker-17.04.0-ce.tgz \
  && mv docker/docker /usr/local/bin \
  && rm -r docker docker-17.04.0-ce.tgz

从环顾四周看,仅添加音量似乎应该没问题,但我的只有在两者兼有之后才起作用。

第二个问题是(与第一个类似)-docker-compose现在应该已经可以工作了,还是我也需要在Dockerfile中安装docker-compose。

我见过

pipeline {

    environment {
        PATH = "$PATH:<folder_where_docker-compose_is>"
    }
}

对于docker-compose,这是指我Droplet上的位置吗?我也尝试过这种方法,但不幸的是,这种方法也不起作用。

shinyzhuzhu 回答:Jenkins管道中的“ docker-compose:未找到”。尝试为环境添加路径

将docker套接字安装到您的容器中只会使docker客户端与运行该容器的主机中运行的docker引擎进行交互。
您仍然需要安装docker和docker-compose客户端,才能从cli调用这些命令。

,

您需要安装docker,docker-compose,确保jenkins用户在docker组中,并将docker group id设置为主机上的docker group id。

Example Dockerfile

本文链接:https://www.f2er.com/3167336.html

大家都在问