Docker log 용량 해결 하기

이원찬·2024년 1월 15일
0

AWS

목록 보기
1/3
post-custom-banner

도커로 서비스중인 프리티어 EC2의 디스크 용량 문제를 해결하는 포스팅 입니다.

프리티어로 디스크 용량이 30GiB 인 Ec2에 도커 컨테이너를 3개 정도 열어두었다.

  1. Spring 서버
  2. mariaDB 서버
  3. Spring 게임 서버

헌데 CICD 중 게임 서버가 종료 됐다.

첫번째 시도

CICD 플로우

  1. 어플 빌드
  2. 도커로 빌드 후 이미지 push
  3. EC2에서 원래 사용중이던 컨테이너 종료, 삭제
  4. EC2에서 image pull 하여 도커 이미지 실행

이 플로우에서 문제는 이전 사용했던 이미지를 삭제 하지 않았다는 것이다...

처음엔 사용중이 아닌 이미지가 많아서 용량이 부족 한줄 알았다.

삭제를 진행 해봤다

sudo docker image prune

엥 근데 4기가 밖에 안지워졌다;;;

30기가로 사용중인 free tier인데

남은 용량이 3.8기가 밖에 없는것이다...

두번째 시도

용량이 어디서 많은지 찾아봤다.

sudo du / -h --max-depth=1

저기 /var에서 많은것 같다,

저기 lib 에 많은것 같다

lib 중에 docker가 가장 많은 용량을 차지하고 있다.

처음엔 DB 컨테이너의 volume이 많이차지하는 중인가 생각했다.

docker/containers 폴더가 가장 많은 용량을 먹고 있었다.

3달 넘게 열어 두었던 벡엔드 서버 컨테이너의 log가 쌓여 19기가나 먹고 있었다...

truncate -s 0 /var/lib/docker/containers/*/*-json.log

명령어를 입력하여 로그를 날려줬다.

22기가나 용량을 확보 했다!!!

이제 CICD 워크플로우도 수정하여 더 효율적으로 용량을 관리해야 겠다.

profile
소통과 기록이 무기(Weapon)인 개발자
post-custom-banner

0개의 댓글