docker-compose로 Docker 이미지에 태그를 지정하는 방법


119

docker-compose를 통해 이미지를 만들고 특정 태그를 설정하고 싶습니다. 문서 내용 :

Compose는 생성 된 이름으로 빌드하고 태그를 지정한 후 그 이미지를 사용합니다.

그러나 태그를 지정하는 방법을 찾을 수 없으며 빌드 된 이미지의 경우 항상 '최신'태그가 표시됩니다.


1
github.com/docker/compose/issues/2092 는 다른 이름으로 이미지를 빌드하기위한 문제 추적 지원입니다
dnephin

답변:


182

문서 / 도구가 업데이트 된 것으로 보이며 이제 image스크립트에 태그를 추가 할 수 있습니다 . 이것은 저에게 성공적이었습니다.

예:

version: '2'
services:

  baggins.api.rest:
    image: my.image.name:rc2
    build:
      context: ../..
      dockerfile: app/Docker/Dockerfile.release
    ports:
      ...

https://docs.docker.com/compose/compose-file/#build


7
사실, 그것은 말한다 "당신은 이미지뿐만 아니라 빌드를 지정하면, 작성 이름 웹 애플리케이션 및 이미지에 지정된 옵션 태그를 내장 이미지"
다니엘 안드레이 Mincă

10
이 얼마나 이상한 인터페이스! 한 필드가 있으면 동일한 들여 쓰기 수준에있는 다른 필드의 의미가 반전됩니다.
Navin

@ numbers1311407 답장하는 댓글이 없어 졌으므로 댓글을 수정 / 삭제할 수 있습니다. ootwch 또는 답변에 동의하지 않는 것처럼 보입니다.
Navin

4
네,이 개념이 너무 이상하다는 것을 알았습니다. 나는 tag옵션 을 기대하고 있었다 . 나는 아무 소용 태그를 찾기 위해 문서를 통해 트롤 어업을했다
마태 복음 브렌트에게

1
@Navin 이것이 이상하지 않다면 image: my.image.name:rc2docker-compose.yml과 build: .docker-compose.override.yml에 넣고 docker-compose가 두 가지를 병합하도록하십시오! (허용 된 답변과 동일한 효과를
얻음

23

원래 답변 Nov 20 '15 :

오늘부터 특정 태그에 대한 옵션이 없습니다. Docker compose는 마법을 사용하고 당신이 보는 것처럼 태그를 할당합니다. docker tag <image> <tag>docker-compose를 호출 한 후 언제든지 스크립트 호출 을 할 수 있습니다 .

이제 위 또는 여기에 설명 된 옵션이 있습니다.

build: ./dir
image: webapp:tag

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