2.3 KiB
| id | created | tags | aliases |
|---|---|---|---|
| Woodpecker 20260320 | 2026-03-20 16:56 |
💡 생각
이거 아주 괜찮을거같음 아주 경량화되어 사용하기 쉽고 빠릿빠릿한 젠킨스 (물론 계속 써봐야겠지만..)
📑 개념
Woodpecker CI는 오픈 소스 기반의 경량 CI/CD 엔진으로, 과거 유명했던 Drone CI에서 포크(Fork)되어 발전한 도구입니다. 복잡한 설정보다는 간결함과 컨테이너 기반의 확장성을 중시하는 팀에게 특히 매력적인 선택지입니다.
📌 상세
1. Woodpecker의 핵심 철학
Woodpecker는 모든 파이프라인 단계를 도커(Docker) 컨테이너 내에서 실행합니다. 이로 인해 환경 격리가 확실하며, 필요한 도구를 설치하기 위해 에이전트를 더럽힐 필요가 없습니다.
-
설정의 간소화:
.woodpecker.yml이라는 YAML 파일 하나로 전체 파이프라인을 정의합니다. -
오픈 소스 정신: 완전히 무료이며, 커뮤니티에 의해 유지보수됩니다. (Drone CI가 기업화되면서 라이선스 제약이 생긴 것에 반발하여 나온 프로젝트입니다.)
-
경량화: 리소스 소모가 매우 적어 개인 서버나 사양이 낮은 VPS에서도 원활하게 돌아갑니다.
2. 작동 방식 (Architecture)
Woodpecker는 크게 두 가지 컴포넌트로 구성됩니다.
-
Server: 웹 UI를 제공하고, GitHub, GitLab, Gitea와 같은 소스 코드 관리 도구(Forge)와 연동하여 웹훅(Webhook)을 처리합니다.
-
Agent: 실제로 파이프라인 작업을 수행하는 주체입니다. 서버로부터 할당받은 작업을 컨테이너를 띄워 실행합니다.
주요 장점
-
멀티 플랫폼 지원: x86_64는 물론이고 ARM64(라즈베리 파이 등)에서도 완벽하게 작동합니다.
-
다양한 Backend: 기본적으로 Docker를 사용하지만, 최근에는 로컬 프로세스 실행이나 쿠버네티스(Kubernetes) 기반의 실행도 지원하기 시작했습니다.
-
플러그인 생태계: Docker 이미지를 플러그인처럼 사용할 수 있습니다. 예를 들어, 빌드가 끝나고 Slack 메시지를 보내고 싶다면 이미 만들어진 Slack 플러그인 이미지를 파이프라인에 추가하기만 하면 됩니다.