이에 대한 좋은 의견이 있기 때문에질문나는 그것이 이 특정한 질문에 대한 좋은 대답이고 유익할 것이라고 생각합니다.
그래서 커뮤니티에 더 많은 혜택을 줄 수 있도록 여기서 답을 얻고 싶습니다.
내 gnu/linux 시스템에는 /var
20G의 큰 공간이 있지만 docker 사용 및 사용자 정의 docker 이미지 개발로 인해 /var
공간의 90%를 차지합니다. 그러면 그 안에 공간을 어떻게 확보할 수 있습니까 /var
?
원래는 이것 때문에 백업을 하고 싶었는데질문말한 다음 다시 분할하십시오 /var
. 그러나 그것은 나에게 너무 많은 노력으로 보입니다. 더 안전하고 시간이 덜 걸리는 대안이 있습니까?
답변1
한동안 이 작업을 수행하지 않았다면 실행하십시오 docker system prune
. 가비지 수집기를 실행하여 많은 디스크 공간을 확보합니다.
다음에 특정 작업(예: 빌드, 가져오기 등)을 수행할 때 더 많은 작업이 필요할 수 있지만 복구할 수 없는 항목을 삭제해서는 안 됩니다.
답변2
또 다른 방법은 폴더를 /var/lib/docker
더 큰 디스크/파티션에 동기화하는 것입니다. 내 경우에는 포함된 파티션에 /home/
여유 공간이 있었기 때문에 다음 단계를 따랐습니다.
/home/
라는 이름의 전용 폴더를 만들었습니다.docker
mkdir /home/docker
을 사용하여
rsync
데이터를 다음 위치에 복사합니다./home/docker
rsync -av /var/lib/docker/ /home/docker
이렇게 하면 소스 디렉터리의 후행 슬래시가 의도된 것입니다
/home/docker
./var/lib/docker
그것 없이는 당신docker
은/home/docker
.rsync 프로세스가 어떻게 작동하는지 확인했습니다.
ls -l /home/docker
나는 docker 데몬을 죽였습니다. (저는 Ubuntu를 사용하고 있습니다. 따라서 using은
service
잘 작동합니다.systemctl
대부분의 배포판에서는 using도 작업을 수행합니다.)sudo service docker stop
제거하다
/var/lib/docker
rm -rf /var/lib/docker
심볼릭 링크
/home/docker
sudo ln -s /home/docker /var/lib/docker
도커를 다시 시작하십시오.
sudo service docker start