
프로젝트 CI/CD 구축을 위해 aws ec2 인스턴스에서 도커 작업 시에 지속적으로 디바이스의 저장 공간이 부족한 상황이 발생하였다.

디바이스의 공간 확인을 위해 df -g로 확인한 결과

ec2 인스턴스의 스토리지 공간이 부족한 사실을 알 수 있었다. 아무래도 저렴한 비용의 인스턴스 유형을 쓰다보니 도커 작업시에 버거웠다.
우선은 공간 확보를 위해 docker image prune, docker container prune로 사용하지 않는 도커 이미지, 컨테이너를 정리해주었다. 하지만 이는 일시적인 조치일 뿐, 지속적인 관리를 위해 인스턴스에 EBS 스토리지를 추가하기로 하였다.
aws ec2 -> EBS 볼륨 -> 볼륨 생성
볼륨 생성
원하는 크기를 정하고 인스턴스와의 연결을 위해 가용 영역을 맞춰줘야 한다.
볼륨 ID -> 작업 -> 볼륨 연결
인스턴스의 스토리지 정보를 확인하면 연결을 확인할 수 있다.

다시 인스턴스 접속을 하고 lsblk를 통해 추가한 볼륨을 확인할 수 있다.

df -hT로 루트 볼륨 포맷 유형 확인
같은 타입으로 포맷
mkdir {마운트할 폴더}
mount dev/xvdf {폴더 경로}
다시df -hT로 확인하면 제대로 마운트된 걸 확인할 수 있다.
시스템 재시작시에도 유지하기 위해서는 마운트 정보를 등록해야 한다.
nano /etc/fstab
이제 도커 작업을 루트 볼륨에서 추가한 볼륨에서 진행하게 해야 한다. 기존의 도커 폴더를 복사하고 심볼릭 링크 설정을 해준다.
cp -a /var/lib/docker {생성한 폴더}
rm -rf /var/lib/docker
ln -s {생성한 폴더} /var/lib/docker
실패했던 docker 작업에 성공하였다.

