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
它看起来安装成功,然而,当我运行docker-compose --version
时,它返回bash: ./docker-compose: No such file or directory
,尽管我可以在$(which docker-compose)
上看到docker-compose
可执行文件。
(此错误与$PATH
无关,我尝试直接在docker-compose
所在目录下运行)
如何在镜像中安装docker-compose
,即如何基于jenkinsci/blueocean
构建包含docker-compose
的新镜像
发布于 2018-07-10 20:58:46
对于我来说,来自"INSTALL AS A CONTAINER"的工作解决方案是:
$ 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
发布于 2018-06-12 20:16:52
您需要添加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
https://stackoverflow.com/questions/50074459
复制相似问题