Verdaccio와 Lerna를 활용한 사내 유틸리티 라이브러리 구축기
회사 내에서 프론트엔드 공통 유틸리티 모듈을 통합 관리하는 작업을 맡으면서, 다음과 같은 요구사항이 생겼다. 여러 레포지토리에 중복된 로직을 하나로 추출해 관리하고 싶다. 패키지 단위로 분리해 모노레포 형태로 운영하되, 유연한 버전 관리가 필요하다. 외부 공개 없이 사내에서만 배포 및 사용 가능한 NPM 패키지 레지스트리를 갖추고 싶다. CI/CD 파이프라인에서도 안전하고 빠르게 배포되도록 자동화를 고려해야 한다. 이 문제를 해결하기 위해 선택한 조합이 바로 와 다. Lerna는 모노레포에서 패키지를 효과적으로 분리하고, 빌드/배포 파이프라인을 정리하는 데 탁월하다. 특히 independent versioning 전략을 활용하면 각 패키지의 변경사항만 추적하여 배포할 수 있어 유틸리티성 모듈 관리에 적합하다. 반면, Verdaccio는 사내 전용 NPM 레지스트리를 손쉽게 구축할 수 있는 도구로, 설정이 단순하며, Docker 기반으로 격리된 레지스트리를 운영할 수 있다. npmj…