Compose SDK 사용하기
Compose SDK 사용하기 (Using the Compose SDK)
go-containerregistry 관련 Compose SDK 패키지는 서드파티 애플리케이션이 Compose 파일에 정의된 컨테이너화된 애플리케이션을 프로그래밍 방식으로 관리하기 위해 Go 라이브러리로 사용할 수 있어요. 이 SDK는 Compose 기능을 애플리케이션에 직접 통합할 수 있는 포괄적인 API를 제공해서, Compose CLI에 의존하지 않고 멀티 컨테이너 환경을 로드·검증·관리할 수 있게 해 줘요.
출처: 문서
본문
배포 파이프라인의 일부로 컨테이너를 오케스트레이션하든, 커스텀 관리 도구를 만들든, 애플리케이션에 컨테이너 오케스트레이션을 내장하든, Compose SDK는 Docker Compose CLI 도구를 구동하는 것과 같은 강력한 기능을 제공해요.
SDK 설정 (Set up the SDK)
New 함수는 Docker 데몬과 상호작용하고 Compose 프로젝트를 관리하는 데 필요한 구성을 가진 서비스를 초기화해요. 이 서비스 인스턴스는 컨테이너 생성·시작·중지·제거뿐 아니라 Compose 파일 로드·검증을 포함한 모든 핵심 Compose 작업의 메서드를 제공해요. 서비스가 기본 Docker API 상호작용을 처리해요.
import compose "github.com/docker/compose/v2/cmd/compose"
...
Go 코드에서 Compose SDK를 import해 프로젝트를 로드하고 서비스를 관리할 수 있어요. 사용 예시:
project, err := ... // Compose 파일 로드 및 검증
err = service.Up(ctx, project, ...) // 서비스 시작
err = service.Down(ctx, project, ...) // 서비스 중지·제거
구체적인 API 사용법과 예시는 원본 문서를 참고해요.