Jenkins和docker-compose

6

我正在尝试在Jenkins构建中使用docker-compose,但我遇到了以下问题:

docker-compose: not found

我该如何安装docker-compose?这是一个插件吗,还是我需要修改jenkins的docker镜像?

我使用的是jenkins:1.642.4版本。

3个回答

7

首先需要安装docker-compose,这是命令:

curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

顺便提一下,这是文档:

https://docs.docker.com/compose/install/

谢谢您的回答,我会尝试。我曾经认为docker-compose是与composer一起打包的。 - Xero

1
假设您正在使用 shell 构建步骤来调用 docker-compose,则首先需要在运行作业的 Jenkins 主服务器(或从节点)上安装 docker-compose。它是一个独立的二进制文件,可以在这里找到详细的安装说明。

谢谢您的回答,我会尝试。我之前认为docker-compose是与composer一起打包的。 - Xero

0

Gianmarco的回答对我有用。如果你正在通过Docker镜像(https://www.jenkins.io/doc/book/installing/docker/)安装Jenkins,你可以将docker-compose安装作为图像构建的一部分。这样,docker-compose就会包含在你可部署的Jenkins镜像中。只需在Dockerfile中添加CURL命令:

FROM jenkins/jenkins:2.289.3-lts-jdk11  
USER root  
RUN apt-get update && apt-get install -y apt-transport-https \  
       ca-certificates curl gnupg2 \  
       software-properties-common  
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -  
RUN apt-key fingerprint 0EBFCD88  
RUN add-apt-repository \  
       "deb [arch=amd64] https://download.docker.com/linux/debian \  
       $(lsb_release -cs) stable"  
RUN apt-get update && apt-get install -y docker-ce-cli  
RUN curl -L \  
  "https://github.com/docker/compose/releases/download/1.25.3/docker-compose-$(uname -s)-$(uname -m)" \  
  -o /usr/local/bin/docker-compose \  
  && chmod +x /usr/local/bin/docker-compose  
USER jenkins  
RUN jenkins-plugin-cli --plugins "blueocean:1.24.7 docker-workflow:1.26"  

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接