Docker
docker-compose 빌드가 자꾸 느려질 때
프로젝트가 커지면서 docker-compose up이 점점 오래 걸린다. 빌드 시간을 줄이려면 어떤 부분을 확인하고 개선해야 할까.
docker-compose로 여러 서비스를 관리하다 보면 빌드 시간이 자꾸 길어진다.
목표 정하기
빌드 속도를 개선하려면 먼저 뭐가 느린지 파악해야 한다.
- 포트 매핑: 컨테이너 간 통신이 병목인가
- 환경변수: 설정이 불필요하게 많진 않나
- 볼륨 마운트: 마운트된 경로가 많진 않나
현재 상태 파악
docker ps
docker logs --tail=100 service-name
docker inspect service-name
개선할 부분 찾기
일반적으로 다음 부분들을 최적화하면 빌드 시간이 줄어든다.
- 캐시 활용: 의존성 캐시가 제대로 작동하나
- 멀티스테이지 빌드: 최종 이미지에 불필요한 파일이 없나
- 의존성 정리: 사용하지 않는 패키지는 없나
단계별 개선
- 먼저 현재 상태를 기록한다
- 한 가지씩만 바꿔본다
- 각 단계마다 빌드 시간이 얼마나 단축되는지 본다
기록해 두기
작은 확인이 모여서 큰 개선이 된다. 다음 문제를 해결할 때 훨씬 빨리 처리할 수 있다.