Docker Build Cloud: 빠르고 멀티 아키텍처 빌드로 시간을 되찾기
Docker Build Cloud: 빠르고 멀티 아키텍처 빌드로 시간을 되찾기
클라우드 기반 리소스, 팀 공유 캐시, 네이티브 멀티 아키텍처 지원으로 어플리케이션을 최대 39배 더 빠르게 빌드해볼게요.
출처: 문서
본문
개발자의 98%가 하루에 최대 한 시간을 빌드가 끝나기를 기다리는 데 쓴다고 해요(Incredibuild: 2022 Big Dev Build Times). 무겁고 복잡한 빌드는 개발 팀의 주요 장애물이 되어 로컬 개발과 CI/CD 파이프라인을 모두 느리게 만들 수 있어요.
Docker Build Cloud는 이미지 빌드 시간을 단축해 개발자 생산성을 높이고, 불만을 줄이며, 릴리스 주기를 짧게 만들어줘요.
누구를 위한 가이드인가요?
- 느린 이미지 빌드의 흔한 원인(제한된 로컬 리소스, 느린 에뮬레이션, 팀 간 빌드 협업 부재)을 해결하고 싶은 모든 사람
- 오래된 머신에서 작업하면서 더 빨리 빌드하고 싶은 개발자
- 같은 레포지토리에서 작업하며 공유 캐시로 대기 시간을 줄이고 싶은 개발 팀
- 에뮬레이터를 위해 몇 시간씩 구성하고 재빌드하고 싶지 않은 멀티 아키텍처 빌드 개발자
배우게 될 내용
- 로컬과 CI에서 컨테이너 이미지를 더 빨리 빌드하기
- 멀티 플랫폼 이미지의 빌드 가속화
- 미리 빌드된 이미지 재사용으로 워크플로 가속화
- 도구 통합 — Docker Compose, GitHub Actions, 기타 CI 솔루션과 잘 동작
왜 Docker Build Cloud인가요?
Docker Build Cloud는 로컬과 CI 양쪽에서 컨테이너 이미지를 더 빨리 빌드할 수 있게 해주는 서비스예요. 빌드는 워크로드에 최적화된 클라우드 인프라에서 실행되며, 구성이 전혀 필요 없어요. 이 서비스는 원격 빌드 캐시를 사용해 어디서든, 모든 팀 구성원에게 빠른 빌드를 보장해요.
Docker Build Cloud는 로컬 빌드보다 여러 이점을 제공해요:
- 향상된 빌드 속도
- 공유 빌드 캐시
- 네이티브 멀티 플랫폼 빌드
빌더나 인프라를 관리할 걱정은 없어요. 그저 내 빌더에 연결하고 빌드를 시작하면 돼요. 조직에 프로비저닝된 각 클라우드 빌더는 단일 Amazon EC2 인스턴스에 완전히 격리되며, 빌드 캐시용 전용 EBS 볼륨과 전송 중 암호화를 사용해요. 즉, 클라우드 빌더 간에 공유되는 프로세스나 데이터가 전혀 없어요.
데모: 개발에서 Docker Build Cloud 설정 및 사용
Docker Build Cloud를 사용하면 빌드 워크로드를 로컬 머신에서 클라우드로 쉽게 옮길 수 있어요. 특히 멀티 플랫폼 빌드에서 더 빠른 빌드 시간을 달성하는 데 도움이 돼요.
이 데모에서 볼 내용:
- 빌더를 로컬로 설정하는 방법
- Docker Compose와 함께 Docker Build Cloud를 사용하는 방법
- 이미지 캐시가 팀 내 다른 사람들의 빌드를 어떻게 빠르게 하는지
데모: CI에서 Docker Build Cloud 사용
Docker Build Cloud는 CI 빌드 실행 시간을 크게 줄여 시간과 비용을 절약해줘요.
빌드가 원격으로 실행되므로 내 CI 러너는 승격된 권한 없이도 Docker 툴링 CLI를 계속 사용할 수 있어, 빌드가 기본적으로 더 안전해져요.
이 데모에서 볼 내용:
- 다양한 CI 플랫폼에 Docker Build Cloud 통합하는 방법
- GitHub Actions에서 Docker Build Cloud를 사용해 멀티 아키텍처 이미지를 빌드하는 방법
- Docker Build Cloud를 사용하는 워크플로와 네이티브로 실행하는 워크플로 간의 속도 차이
- GitLab Pipeline에서 Docker Build Cloud를 사용하는 방법
흔한 도전과 질문
Docker Build Cloud는 독립 제품인가요, 아니면 Docker Desktop의 일부인가요?
Docker Build Cloud는 Docker Desktop과 독립 실행형 모두에서 사용할 수 있는 서비스예요. 로컬과 CI 모두에서, 클라우드 인프라에서 실행되는 빌드로 컨테이너 이미지를 더 빨리 빌드하게 해줘요. 이 서비스는 원격 빌드 캐시를 사용해 어디서든, 모든 팀 구성원에게 빠른 빌드를 보장해요.
Docker Desktop과 함께 사용하면 Builds 뷰가 Docker Build Cloud와 바로(out-of-the-box) 작동해요. 같은 빌더를 사용하는 내 빌드와 팀 구성원이 시작한 빌드의 정보를 보여줘 협업적 문제 해결을 가능하게 해요.
Docker Desktop 없이 Docker Build Cloud를 사용하려면 Docker Build Cloud(cloud 드라이버)를 지원하는 버전의 Buildx를 다운로드하고 설치해야 해요. docker compose build 명령으로 Docker Build Cloud를 사용해 빌드할 계획이라면 Docker Build Cloud를 지원하는 Docker Compose 버전도 필요해요.
Docker Build Cloud는 Docker Compose와 어떻게 동작하나요?
Docker Compose는 Docker Build Cloud와 바로 작동해요. Docker Build Cloud 호환 클라이언트(Buildx)를 설치하면 두 명령 모두에서 작동해요.
Docker Build Cloud Team 플랜에는 몇 분이 포함되나요?
Docker Build Cloud의 가격 세부사항은 가격 페이지에서 확인할 수 있어요.
저는 Docker 개인 사용자인데 Docker Build Cloud를 사용해볼 수 있나요?
Docker 구독자(Pro, Team, Business)는 매달 계정 전체에서 공유되는 일정 분량의 분을 받아 Build Cloud를 사용해요.
Docker 구독이 없다면 무료 Personal 계정에 가입하고 Docker Build Cloud 평가판을 시작할 수 있어요. Personal 계정은 단일 사용자로 제한돼요.
팀이 공유 캐시 혜택을 받으려면 Docker Team 또는 Docker Business 구독을 사용해야 해요.
Docker Build Cloud는 CI 플랫폼을 지원하나요? GitHub Actions와 작동하나요?
네, Docker Build Cloud는 GitHub Actions, CircleCI, Jenkins 등을 포함한 다양한 CI 플랫폼과 함께 사용할 수 있어요. 빌드 파이프라인을 가속화해 대기와 컨텍스트 전환에 쓰는 시간을 줄여줘요.
Docker Build Cloud는 GitHub Actions와 함께 사용해 빌드·테스트·배포 파이프라인을 자동화할 수 있어요. Docker는 워크플로에서 사용할 수 있는 공식 GitHub Actions 세트를 제공해요.
GitHub Actions와 Docker Build Cloud를 함께 쓰는 것은 간단해요. GitHub Actions 구성에서 한 줄만 바꾸면 나머지는 전부 그대로 유지돼요. 새 파이프라인을 만들 필요가 없어요. Docker Build Cloud의 CI 문서에서 자세히 알아볼 수 있어요.
더 알아보기 (Learn more)
- Docker Build Cloud 개요
- GitHub Actions과 Docker
- 멀티 플랫폼 빌드