Docker 이미지 저장 경로 바꾸기

Docker pull을 사용하다가 리눅스 서버의 root에 마운트된 디스크가 꽉 차서 Docker Root 경로를 바꾸는 방법을 찾아봤습니다(참고: link).

현재 Docker Root Dir이 /var/lib/docker, 변경할 이미지 저장 경로는 /data/docker/root라고 하겠습니다. 이미지 저장 경로는 미리 만들어 둡니다. 참고로, 현재 Docker Root Dir은 다음 명령으로 확인할 수 있습니다.

$ docker info |grep Root

아래 작업들은 root 계정으로 진행합니다. 먼저 docker daemon을 정지합니다.

# service docker stop

/etc/docker/daemon.json 파일에 다음 내용을 추가합니다(Docker v17.05.0 이상).

{ 
   "data-root": "/data/docker/root"
}

기존의 Docker 데이터를 새로운 경로로 복사합니다. 기존 데이터를 지우기 전에 Docker가 잘 작동하는 것을 확인하려고 합니다. 이를 위해 기존 경로의 이름을 바꾸고 Docker를 재시작합니다.

# cp -rp /var/lib/docker/* /data/docker/root/
# mv /var/lib/docker /var/lib/docker.old
# service docker start

Docker가 잘 작동하는지 확인한 후 기존 경로를 삭제합니다.

# docker info |grep Root
# docker images
# rm -rf /var/lib/docker.old

댓글 남기기