[Docker] Mac M2 – no such file or directory: /var/lib/docker/volumes ,找不到var/lib/docker/volumes (已解決)
- Mac M2 Pro
- Docker 24.0.6
$ docker volume inspect 14dfdb65fb7075d91b2004c979a3591df54bcc1303ff3ca96a3536f4761a19cc
[
{
"CreatedAt": "2023-11-21T12:52:27Z",
"Driver": "local",
"Labels": {
"com.docker.volume.anonymous": ""
},
"Mountpoint": "/var/lib/docker/volumes/14dfdb65fb7075d91b2004c979a3591df54bcc1303ff3ca96a3536f4761a19cc/_data",
"Name": "14dfdb65fb7075d91b2004c979a3591df54bcc1303ff3ca96a3536f4761a19cc",
"Options": null,
"Scope": "local"
}
]
嘗試進入這個路徑時,發現它並不存在
$ ls /var/lib/docker
ls: /var/lib/docker: No such file or directory
網路上有許多解決方式是使用下方指令,但仍錯誤。
$ screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
嘗試之後直接閃退:
[screen is terminating]
1.解決閃退問題方式
詳細可參考此篇:Where is /var/lib/docker on Mac/OS X
mac下docker實際是在vm裡又加了一層,因此需要進入vm 才能進行操作。
- 終端機執行下方指令
docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh
2.檢視volumes
解決閃退問題後,會進入VM內,輸入ls,檢視當前路徑下目錄資訊。
ls /var/lib/docker/volumes/html/_data
退出:exit
補充:
進入Mountpoint對應的資料夾 (Linux)
如果使用Linux,可以直接找到Mountpoint對應的目錄,就是和container連接的地方,這裡面的改動和container內是同步的。
但如果是Mac,用同樣的方式想要進入Mountpoint對應的目錄,會不存在,
Mac需要先創建一個Linux的VM,所以Mountpoint對應的不是Mac裡可以找得到的檔案,而是要到那個VM裡去找,
补充完整的命令图