2025
home
체험형-1차 프로그램
home
☺️

[뿌듯한 코드] 프론트엔드 개발자, 데브옵스로 진화!

원래 프론트엔드 기술에만 관심이 있던 저는 기술 문서를 작성하는 실력을 다듬고자 백엔드 프레임워크를 사용하는 FOSSLight Hub의 테크니컬 라이터로 지원하게 되었습니다. 그러던 중 테크니컬 라이팅 외에도 개발을 통하여 기여해도 좋을 것 같다는 멘토님 말씀 덕에 컨트리뷰션을 결심하게 되었습니다.
Challenges 활동이 시작되고 할 수 있는 일부터 해보자라는 마음으로 프로젝트를 살펴보았습니다. 그러던 중 CI/CD 상에서 자주 바뀌지 않는 의존성들이 반복적으로 설치되고 있는 것을 발견하였습니다. 매번 설치마다 소요되는 시간이 아깝게 느껴져 해결 방법을 고민하던 중 GitHub Actions에서 지원하는 의존성 캐싱 기능을 알게 되었습니다. 이 기능을 활용하면 CI/CD 환경에 의존성을 캐싱하고 필요할 때 가져다 쓸 수 있어 설치 시간을 획기적으로 줄일 수 있을 것이라 생각하였습니다. 결국 의존성 캐싱을 도입함으로써 오래 걸리던 CI/CD 속도를 60초 이상 단축할 수 있었습니다.
Masters 활동을 진행하며 프로젝트 내 DevOps 관련 팀에 속하게 되어 Docker 이미지 배포를 맏게 되었습니다. 배포는 릴리즈마다 자동으로 실행되도록 GitHub Actions를 사용하여 CD 파이프라인을 구축하였습니다. 그리고 배포되는 이미지의 용량을 줄이기 위해 Dockerfile의 불필요한 레이어를 제거하고 저용량의 Base Image를 사용하도록 변경하였습니다. 이 과정에서 기존 398MB였던 이미지를 344MB로 줄이면서 약 13%의 사이즈 절감 효과를 볼 수 있었습니다.
이러한 과정을 거쳐 드디어 오늘 Docker 이미지 배포에 성공하였습니다. GitHub Actions에서 빌드되고 배포되는 과정을 보니 뿌듯함을 느낄 수 있었습니다.
[뿌듯한 코드]