Mac M1上Docker容器-json.log访问失败,/var/lib/docker目录不存在
Mac M1上访问Docker容器JSON日志的解决方法
Mac上的Docker Desktop基于Linux虚拟机运行,本地macOS系统不存在/var/lib/docker目录,docker inspect返回的路径是虚拟机内部的路径,所以直接在本地访问会提示目录不存在。以下是几种可行的解决办法:
方法一:直接用docker logs命令操作(最简便)
- 实时查看容器日志:
docker logs -f <容器ID/容器名称> - 将日志导出到本地文件:
docker logs <容器ID/容器名称> > container-log.json
方法二:进入Docker虚拟机内部访问原始日志文件
新版Docker Desktop(默认使用OrbStack)
执行以下命令直接进入虚拟机终端:
docker run -it --rm --privileged --pid=host alpine nsenter -t 1 -m -u -n -i sh
进入后即可访问/var/lib/docker/containers/<容器ID>/<容器ID>-json.log路径下的日志文件。
旧版Docker Desktop(使用HyperKit虚拟机)
通过screen连接虚拟机终端:
screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty
连接成功后就能在虚拟机内访问/var/lib/docker目录下的日志文件。
方法三:通过Docker Desktop图形界面查看
打开Docker Desktop,找到目标容器,切换到「Logs」标签页,可直接查看日志,也可右键复制或导出日志内容。
内容的提问来源于stack exchange,提问作者Prithviraj Pawar
相关产品推荐
相关产品推荐

