본문 바로가기
코딩코딩/데브옵스

[번역] Docker 개발팀이 만든 CI/CD 파이프라인 툴 Dagger

by g0n1 2022. 4. 2.
728x90

devops에 대한 지식없이 번역한 글이라 구글번역기보다도 못한 것 같지만 Dagger에 관한 글도 적고 공부할 겸 한번 번역해보았습니다.

Dagger를 소개합니다: CI/CD 파이프라인 구축을 위한 새로운 방법

안녕하세요! 우리는 도커에 이어 새로운 프로젝트인 Dagger를 소개하게 되어 기쁩니다. Dagger는 CI/CD를 위한 portable devkit 입니다. Dagger는 Devops 엔지니어들이 강력한 CI/CD 파이프라인을 빠르게 구축하고, 어디서든 실행할 수 있게 합니다. 다음과 같은 장점이 있습니다.

  • 개발과 CI 환경의 통합
  • 파이프라인의 테스트와 디버깅을 로컬에서 가능
  • avoiding CI lock-in( 다른 CI를 사용하지 못하고 특정 CI에 종속됨을 회피할 수 있음)
  • 데브옵스 커뮤니티의 단편화 문제를 돕기 바라는 진정한 의미에서의 composable한 소프트웨어 요소 생태계 : “a lego system”
  • Dagger는 cloud-native ecosystem에서 가장 짜릿한 두 기술인 BuildkitCUE 덕분에 만들어졌습니다

Why Dagger?

A developer’s dream is a devops engineer’s nightmare

개발자가 되기 더 좋은 시기 같은 건 없습니다. 전문도구와 클라우드 인프라의 과팽창 덕분에, 개발팀은 어느 산업이든 경쟁력있는 제품을 내놓을 수 있습니다. 그 결과 전례없는 성장과 혁신이 일어나고 있습니다.

이 개발자들의 꿈은 더욱 더 복잡해지는 어플리케이션의 배포를 자동화하는 게 일인 데브옵스 엔지니어에게는 악몽입니다. 그들의 소프트웨어를 연속적으로 빌드,테스트, 배포하기 위해 개발자들은 과팽창하는 전문 도구를 이어붙인 CI/CD 파이프라인을 만드는 작업이 필요합니다. 결국 쓰기 힘들고, 디버그와 테스트하기 힘들고, 새로운 개발과 CI 마다 새로 써야할 홈메이드 스크립트가 탄생합니다. 파이프라인 간의 컴포넌트 재사용이 굉장히 적어 파편화와 끊임없는 재창조가 필요합니다.

Modernizing the CI/CD development experience

Dagger는 악몽에 몸부림치는 데브옵스엔지니어에게 이렇게 말해줍니다 : “ 너의 파이프라인도 결국 네가 만든 소프트웨어야. 이게 너로 하여금 개발자로 만들어주고 너는 적절한 개발 경험을 누릴 가치가 있어” 예를 들어,

  • 한번쓰고 버릴 스크립트로 파이프라인을 이어붙이는 대신, 직관적인 선언형 언어와 API를 통해 레고놀이를 하듯 재사용 가능한 actions을 조화롭게 사용할 수 있다.
  • 완벽한 패키지 관리 시스템 덥군에, Action들은 안전하게 공유되고, 커뮤니티에 의해 개발되는 목록들이 커지고 있다.
  • 파이프라인을 지역적으로(locally)테스트하고 디버그한 뒤, 어느 CI System에서나 실행시킬 수 있다.
  • 모든 action은 자동으로 캐시되어 직접 조작할 필요가 없다.

이러한 것들이 데브옵스 엔지니어들에게 현대 개발 관행이 제공하는 자신감을 주어 지속적으로 그들의 파이프라인을 개선시킬 수 있게 합니다.

Write your pipeline once, run anywhere

Dagger는 Docker-compatible runtime이 가능한 어느곳에서든 똑같이 잘 작동하기 때문에 데브옵스의 2가지 주된 문제를 해결할 수 있게 합니다: dev/CI drift, and CI lock-in.

  • Dev/CI drift: 동일한 자동화를 두 번 작성하는 대신(CI별 구성에서 한 번, Docker 작성 파일, 셸 스크립트 또는 Makefile에서 한 번) Dagger 계획을 한 번 작성한 다음 모든 환경에서 실행하기만 하면 됩니다.
  • CI lock-in: 어떤 CI 프로그램에서 다른 CI프로그램으로 넘어가거나, 여러개의 CI system을 사용할 때 전체 파이프라인을 처음부터 작성할 필요가 없습니다. 똑같은 Dagger plan은 모든 유명 CI system에서 수정할 필요 없이 잘 돌아갑니다.

 

본문: https://dagger.io/blog/public-launch-announcement

 

dagger.io | Introducing Dagger: a new way to create CI/CD pipelines

 

dagger.io

 

728x90

댓글