Docker 이미지 저장 위치 변경하기
Docker 이미지의 디스크 용량에 따라
어느 날 폴 도커의 이미지가 갑자기 경고한다.
デバイスに空き領域がありません
용량이 남아있을 텐데, 왜요?이렇게 생각하면 Docker/var/lib/docker
는 그림 등을 아래에 저장한 것 같다.따라서 /
(슬라이딩 루트)의 용량이 적으면 큰 Docker 이미지를 여러 개 다운로드하면 용량이 빵이 된다.나는
/
100GB만 확보했기 때문에 용량이 고갈로 지정되었다.보존 장소를 바꾸는 것은 일반적인 방법인 것 같다.인터넷도 찾아보고 나왔으니 우선 그것을 자신의 노트로 남겨 두어라.
Docker 이미지 저장 위치 변경하기
제 경우는
~/docker(/home/<username>/docker)
이하로 이동했습니다.다른 시디로 바꾸려면 각자 다시 읽으세요.
Docker 중지 및 파일 복사
다음 명령을 실행합니다.그나저나 이것이라면
~/docker/docker
좀 어리석은 느낌이 들 것이다(이후에야 알아차렸다).$ sudo systemctl stop docker
$ cd && mkdir docker
$ sudo cp -ar /var/lib/docker docker/
Docker 서비스 옵션 편집
다음 Vim 편집 시 명령입니다.
$ sudo vim /lib/systemd/system/docker.service
ExecStart
에서 다음 옵션을 추가하십시오-g
.<username>
사용자 이름(홈 디렉토리 이름)을 입력합니다.수정 전
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
변경 후ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -g /home/<username>/docker/docker
주: 서비스의 옵션을 변경하는 것 외에 변경/etc/docker/daemon.json
하는 방법이 있는 것 같습니다(잠시 후에 알려주세요).다음 페이지를 참조하십시오. (나는 해 본 적이 없습니다.)참조: docker image 저장 위치를 외부 저장소로 변경
Docker 서비스 다시 로드 및 시작
다음 명령을 실행합니다.가능하면 다시 가동하는 게 좋을 것 같습니다.
$ sudo systemctl daemon-reload
$ sudo systemctl start docker
이미지 확인
먼저 Docker의 인상을 확인합니다.
$ docker images
다음은 디스플레이 예입니다.REPOSITORY TAG IMAGE ID CREATED SIZE
nvcr.io/nvidia/tensorflow 20.03-tf1-py3 8b2abbd886f0 22 months ago 9.51GB
nvcr.io/nvidia/tensorflow 20.03-tf2-py3 9af3e368023b 22 months ago 7.44GB
동작 확인
적당한 Docker 이미지를pull하여 목적지
docker
디렉터리의 용량이 증가했는지 확인합니다.$ cd
$ sudo du -s docker
53376496 docker
$ docker pull centos
$ sudo du -s docker
53627380 docker
는 용량이 조금 늘었기 때문에 디렉터리가 옮겨졌다는 것을 똑똑히 알 수 있다.원본 디렉토리 삭제
필요하지 않으면 다음 명령으로 원래 디렉터리를 삭제하면 용량을 절약할 수 있습니다.
$ sudo rm -rf /var/lib/docker
총결산
에서는 Docker 이미지의 저장 위치를 변경하는 방법에 대해 설명합니다.
참조 링크
Reference
이 문제에 관하여(Docker 이미지 저장 위치 변경하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/karaage0703/articles/46195947629c35텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)