Mac에서 Docker 이미지 및 컨테이너의 저장 위치를 ​​찾는 방법

Mac에서 Docker 이미지 및 컨테이너의 저장 위치를 ​​찾는 방법

2022-10-04 last update

6 minutes reading devops macos unix docker
도커 이미지의 위치를 ​​찾는 것은 Mac에서 잡다한 일입니다. 일반적으로 대부분의 시스템에서 명령docker info을 실행하여 이미지와 컨테이너의 위치를 ​​확인할 수 있지만 Mac에서는 작동하지 않습니다. 이 명령은 루트 디렉토리가 /var/lib/docker 에 있음을 알려줍니다. 이 디렉토리는 Mac에서는 존재하지 않는 디렉토리입니다.

There are two primary ways to get to this directory. Try option 1 first, if it does not work try option 2



다음은 docker 디렉토리에 대한 약간의 배경 정보입니다.



Mac에서 도커 파일은 사용자 라이브러리 디렉토리~/Library/Containers/com.docker.docker/에 있는 가상 머신 내부에 있습니다.

이 디렉토리는 터미널에서 쉽게 접근할 수 있지만 파인더를 통해 접근하려고 하면 com.docker.docker가 해당 디렉토리 이름 아래에 시각적으로 나타나지 않는다는 것을 알 수 있습니다. ~/Library/Containers로 이동하면 폴더 이름이 Docker 대신 표시됩니다. com.docker.docker 디렉토리입니다.



이제 루트 디렉토리/var/lib/docker로 이동하려면 Mac에서 사용 중인 도커 가상 머신에 액세스해야 합니다.


옵션 1



단말기 신청 화면을 이용하세요.

screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty


명령을 입력할 수 있는 화면이 표시되어야 합니다.

cd /var/lib/docker



옵션 2



이제 운이 좋지 않고 권한 거부 오류가 발생하면 도커 이미지를 통해 도커 가상 머신에 액세스를 시도해야 합니다.



이 오류를 해결하기 위해 데비안 도커 이미지를 설치하고 실행한 다음 nsenter 도구로 컨테이너를 입력합니다.

docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh


이렇게 하면 데비안 이미지가 열리고 sh 쉘을 통해 도커 파일을 탐색할 수 있습니다.

이제 쉘을 사용할 수 있습니다. 명령어를 입력하자

cd /var/lib/docker


기본 스토리지 드라이버 오버레이2가 사용된 경우 Docker 이미지가 디렉토리에 저장됩니다/var/lib/docker/overlay2.




도커 실행 플래그에 대한 자세한 설명을 보려면 터미널에 docker run --help 명령을 입력하십시오.


출처



redhat linux 웹사이트에서 nsenter linux 도구에 대해 자세히 알아보십시오.

Getting path and accessing persistent volumes in Docker for Mac 팀 카마닌

Github : docker can't access volume with screen
docker