繁体   English   中英

如何在jenkinsci / blueocean中安装docker-compose?

[英]How to install docker-compose in jenkinsci/blueocean?

自官方文件提到图像以来, docker图像jenkinsci / blueocean似乎是正式的。

我想在容器中运行docker-compose命令,但这个图像只有docker而不是docker-compose

因此,我尝试将docker-compose安装为容器内的常用方法。

$ curl -L https://github.com/docker/compose/releases/download/1.21.0/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose

它看起来安装成功,然而,当我运行bash: ./docker-compose: No such file or directory docker-compose --version ,它返回bash: ./docker-compose: No such file or directory docker-compose --version bash: ./docker-compose: No such file or directory ,即使我可以在$(which docker-compose)看到docker-compose可执行文件$(which docker-compose)

(此错误与$PATH无关,我试图直接在docker-compose所在的目录中运行)

我怎么能在图像中安装docker-compose ,也就是说,如何基于jenkinsci/blueocean构建包含jenkinsci/blueocean docker-compose的新图像?

对我来说,从“安装为集装箱”的解决方案是:

$ sudo curl -L --fail https://github.com/docker/compose/releases/download/1.21.2/run.sh -o /usr/local/bin/docker-compose
$ sudo chmod +x /usr/local/bin/docker-compose

你需要添加glibc:

FROM jenkinsci/blueocean

USER root

RUN curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose && \
    chmod +x /usr/local/bin/docker-compose

RUN apk add ca-certificates wget && \
    wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
    GLIBC_VERSION='2.27-r0' && \
    wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-${GLIBC_VERSION}.apk && apk add glibc-${GLIBC_VERSION}.apk && \
    wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-bin-${GLIBC_VERSION}.apk && apk add glibc-bin-${GLIBC_VERSION}.apk

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM