docker/compose
Docker Compose v5.7.0, 컨테이너 제어 효율화
원제 docker/compose v5.7.0
v5.7.0
Key Point
라이브러리 사용자는 Up() 옵션 검증이 엄격해져 기존 코드 수정이 필요할 수 있으며, CLI 사용자는 새로운 플래그와 개선된 동작으로 더 세밀한 컨테이너 제어가 가능해진다.
핵심 요약
- Docker Compose v5.7.0은 실행 계획(execution plan) 방식을 통합하여 up -d와 대화형 up 명령이 단일 데몬 스냅숏 위에서 Create와 Start 단계를 하나의 계획으로 실행하도록 변경했다.
- 라이브러리로 사용하는 경우 api.Compose.Up은 UpOptions.Validate()로 Start.Wait + Start.Attach 등 호환되지 않는 옵션 조합을 사전에 검증하고 인식하지 않던 조합들을 이제 오류로 반환한다.
- run 명령에 --no-recreate 플래그가 추가되어 기존 의존성을 그대로 재사용할 수 있으며, push 명령에는 로컬에 없는 이미지를 건너뛰는 --ignore-missing 옵션이 추가됐다.
- stats 명령에 --all-projects와 --aggregate 플래그가 추가되었고, 네트워크 서비스는 별칭으로 자신의 이름을 거부할 수 있으며, umask 서비스 속성이 지원된다.
- Docker Desktop Hub 세션을 활용하여 Docker Hub 레지스트리 자격증명을 처리하고, pre_start 훅이 서비스의 env_file과 environment 변수를 받게 되었다.
- 다양한 버그 수정으로 cancelled 상태의 의존성 처리, 컨테이너 로그 중복 제거, watch 명령의 바인드 마운트 경로 처리, 의존성 재생성 시 익명 볼륨 보존 등이 개선되었다.
- 내부적으로 코드 구조를 리팩터링하여 api.Compose를 6개의 작은 인터페이스로 분리하고, 여러 패키지를 internal로 이동하여 공개 API 표면을 정리했다.
- 보안 업데이트로 golang.org/x/net v0.60.0, containerd v2.4.2, Go 1.26.9-1.26.10 등 의존성을 업그레이드했다.
릴리스 노트 보기 ↗github.com