BitBucket에서 도커 작성 실행이 지원되지 않습니까?


12

목표

BitBucket 파이프 라인에서 docker-compose를 실행하는 것이 목표입니다.

시도

bitbucket-pipelines.yml

image: docker/compose:1.12.0

pipelines:
  default:
    - step:
        script:
          - docker-compose up --build

결과

The Docker Engine version is less than the minimum required by Compose.
Your current project requires a Docker Engine of version 1.13.0 or greater.

토론

게시물 에 따르면 지원되지 않습니까?

답변:


10

여기 내 해결책이 있습니다 : (bitbucket-pipelines.yml)

pipelines:
  default:
    - step:
        script:
          - export DOCKER_COMPOSE_VERSION=1.18.0
          - export DOCKER_COMPOSE_URL=https://github.com/docker/compose/releases/download/${DOCKER_COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m)
          - curl -L $DOCKER_COMPOSE_URL > docker-compose
          - chmod +x docker-compose
          - mv docker-compose /usr/local/bin
          - docker-compose build --force-rm --no-cache --pull

6

파이프 라인 API는 유사한 기능을 사용자 정의로 구현하고 보안 문제가 발생할 수 있기 때문에 기본 도커-컴포지션 통합을 지원할 가능성이 적습니다. 열린 문제.

업데이트 : 설명서에 설명 된대로 다중 컨테이너 파이프 라인에 대한 지원 추가


3

다음 이미지를 사용하여 docker-compose를 사용하여 이미지를 원격 호스트로 푸시했습니다.

tmaier / docker-compose : 최신

docker-compose가 설치된 기본 도커 이미지 입니다.

bitbucket-pipelines.yml모습은 다음과 같습니다.

- step:
    image: tmaier/docker-compose:latest
    script:
        - (umask  077 ; echo $DOCKER_PRIVATE_KEY | base64 -d > ./keys/key.pem)
        - export DOCKER_CERT_PATH=./keys/
        - export DOCKER_TLS_VERIFY="1"
        - export DOCKER_HOST=tcp://<DOCKER_HOST_IP>:2376
        - docker login --username $DOCKER_HUB_USERNAME --password $DOCKER_HUB_PASSWORD
        - docker-compose up -d <service>

내 REPO에에 - 검사 한 ca.pemcert.pem에 고정 표시기-작성에 필요한 keys디렉토리. 개인 키는 Bitbucket 파이프 라인 환경 변수의 보안 변수로 base64로 인코딩되어 저장되므로 keys/key.pem첫 번째 단계로 해독 하고 파이프 라인에 붙여 넣습니다 .

docker login원격 호스트에 대한 환경 변수를 설정 한 후에 사용했습니다 .


0

bitbucket-pipelines.yml

image: python:3.8.1

pipelines:
  branches:
    "**":
      - step:
          name: Build
          services:
            - docker
          caches:
            - docker
            - pip
          script:
            - pip install docker-compose
            - docker network create dockernet
            - docker-compose build

definitions:
  services:
    docker:
      memory: 2048
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.