[docker] Docker 이미지는 호스트 컴퓨터에 어디에 저장되어 있습니까?
directory에서 컨테이너를 찾을 /var/lib/docker/containers
수 있었지만 이미지를 찾을 수 없습니다.
아래의 디렉토리와 파일은 /var/lib/docker
무엇입니까?
답변
/var/lib/docker
디렉토리 의 내용은 Docker가 저장에 사용 하는 드라이버 에 따라 다릅니다 .
기본적으로이 될 것입니다 aufs
하지만 다시 떨어질 수 overlay
, overlay2
, btrfs
, devicemapper
또는 zfs
커널 지원에 따라 달라집니다. 대부분의 장소에서 이것은 aufs
있지만 RedHats는 함께 갔다devicemapper
.
-s
또는--storage-driver=
옵션을 사용하여 스토리지 드라이버를 Docker 데몬 으로 수동 설정할 수 있습니다 .
/var/lib/docker/{driver-name}
이미지 내용에 대한 드라이버 별 저장소가 포함됩니다./var/lib/docker/graph/<id>
이제json
및layersize
파일 에 이미지에 대한 메타 데이터 만 포함 됩니다.
의 경우 aufs
:
/var/lib/docker/aufs/diff/<id>
이미지의 파일 내용이 있습니다./var/lib/docker/repositories-aufs
로컬 이미지 정보가 포함 된 JSON 파일입니다. 이것은 명령으로 볼 수 있습니다docker images
.
의 경우 devicemapper
:
/var/lib/docker/devicemapper/devicemapper/data
이미지를 저장/var/lib/docker/devicemapper/devicemapper/metadata
메타 데이터- 이러한 파일은 씬 프로비저닝 된 “스파 스”파일이므로 크기가 크지 않습니다.
답변
Docker for Mac Application을 사용할 때 컨테이너는 다음 위치의 VM 내에 저장되어있는 것으로 보입니다.
~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2
업데이트 ( mmorin의 제공 ) :
2019 년 1 월 15 일 현재이 파일 만있는 것 같습니다.
~/Library/Containers/com.docker.docker/Data/vms/0/Docker.raw
Docker Disk와 그 안에있는 모든 이미지와 컨테이너가 들어 있습니다.
답변
이것은 옛날 방식이었고 이제 바뀌 었습니다. 2019 년 기준으로이 답변을 무시
Mac OS X 또는 Windows의 특별한 경우 boot2docker를 사용하면 Docker 이미지가 boot2docker가 관리하는 VirtualBox VM 내에 저장됩니다.
이 VM은 VirtualBox 이미지의 일반적인 위치에 저장됩니다.
OS X : ~/VirtualBox VMs/boot2docker-vm
윈도우 : %USERPROFILE%/VirtualBox VMs/boot2docker-vm
다음을 실행하여 재설정 할 수 있습니다 (경고 : 지금까지 빌드 및 다운로드 한 모든 이미지가 삭제됩니다).
boot2docker down
boot2docker destroy
boot2docker init
boot2docker up
유용한 –rm 옵션을 사용하지 않고 빌드를 빌드 / 디버깅 할 때 수많은 중간 이미지를 유지 한 경우 특히 유용합니다.
docker build -t webapp --rm=true --force-rm=true .
대신에:
docker build -t webapp .
답변
실제로 Docker 이미지는 다음 명령으로 표시된 것처럼 두 개의 파일에 저장됩니다
$ docker info
데이터 파일:
/var/lib/docker/devicemapper/devicemapper/data
메타 데이터 파일 :
/var/lib/docker/devicemapper/devicemapper/metadata
답변
Hyper-V를 사용하는 새로 출시 된 ‘Docker for Windows’에서 데이터는 Docker 가상 하드 디스크에 있습니다.
C : \ Users \ Public \ Documents \ Hyper-V \ Virtual hard disks \ MobyLinuxVM.vhdx
Docker / MobyLinuxVM에 액세스하기 위해 ‘Hyper-V 관리자’를 열 수도 있습니다.
답변
이미지는에 저장됩니다 /var/lib/docker/graph/<id>/layer
.
이미지는 부모 이미지와 다릅니다. 부모 ID는 이미지의 메타 데이터와 함께 저장됩니다 /var/lib/docker/graph/<id>/json
.
당신 docker run
이 이미지. AUFS는 모든 계층을 하나의 사용 가능한 파일 시스템으로 ‘병합’합니다.
답변
우분투에서는 실행중인 이미지로 “재생”할 수 있습니다
sudo baobab /var/lib/docker
실제로 이미지는 /var/lib/docker/aufs/diff