claude-skill-docker-wsl-cleanup은(는) 무엇을 하나요?
Claude Code 스킬: Windows에서 Docker Desktop WSL2 디스크 공간 확보
개요
Docker Desktop이 WSL2를 사용할 때 가상 하드 디스크 파일(ext4.vhdx)이 시간이 지남에 따라 계속 커집니다. Docker 내부에서 파일을 삭제해도 Windows는 이 공간을 자동으로 회수하지 않습니다. 이 스킬은 Claude Code가 디스크 공간을 복구하는 단계를 안내합니다.
사용 방법
-
Docker 시스템 정리
docker system prune -a --volumes -
Docker Desktop 완전 종료
- 시스템 트레이에서 Docker Desktop 아이콘을 마우스 오른쪽 버튼으로 클릭하고 "Quit Docker Desktop" 선택
- 또는 PowerShell(관리자 권한)에서 실행:
wsl --terminate docker-desktop wsl --terminate docker-desktop-data -
디스크 위치 식별
(Get-ChildItem -Path "$env:LOCALAPPDATA\Docker\wsl\data" -Recurse -Filter "ext4.vhdx").FullName -
디스크 축소 (관리자 PowerShell 필요)
diskpart # diskpart 프롬프트에서: select vdisk file="C:\Users\<사용자님>\AppData\Local\Docker\wsl\data\ext4.vhdx" attach vdisk readonly compact vdisk detach vdisk exit -
Docker Desktop 재시작
중요 참고 사항
- 디스크 조작 전 항상 중요한 데이터를 백업하세요.
- 이 프로세스는 WSL2 백엔드를 사용하는 Docker Desktop(Windows 전용)에 적용됩니다.
- 확보되는 공간은 사용량에 따라 수 GB에서 수십 GB까지 다양합니다.
- Docker Desktop을 실행 중인 상태에서는
ext4.vhdx파일을 축소할 수 없습니다.
문제 해결
-
오류: "The process cannot access the file because it is being used by another process"
- Docker Desktop과 모든 WSL 인스턴스가 완전히 종료되었는지 확인하세요.
-
diskpart가 '액세스가 거부됨' 오류를 반환하는 경우
- PowerShell을 관리자 권한으로 실행했는지 확인하세요.
-
Docker Desktop 재시작 후 공간이 다시 증가하는 경우
docker system prune이 완전히 실행되었는지 확인하고 중지된 컨테이너와 사용하지 않는 이미지를 모두 제거하세요.