Как установить docker-compose в jenkinsci / blueocean? - PullRequest
0 голосов
/ 28 апреля 2018

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, хотя я вижу исполняемый файл docker-compose в $(which docker-compose).

(Эта ошибка не относится к $PATH, я пытался запустить непосредственно в каталоге, где находится docker-compose)

Как я могу установить docker-compose в образе, то есть, как я могу создать новый образ, содержащий docker-compose на основе jenkinsci/blueocean?

Ответы [ 2 ]

0 голосов
/ 10 июля 2018

Для меня сработало решение от "УСТАНОВИТЬ КАК КОНТЕЙНЕР" что:

$ 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
0 голосов
/ 12 июня 2018

Вам необходимо добавить 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
...