我正在尝试在Mac上找到docker容器日志文件。容器仍在运行。
我可以看到docker logs es5
的输出
运行
docker inspect -f {{.LogPath}} es5
我得到了一个文件名。
/var/lib/docker/containers/3ac5831155da80986cf7cd45889ce5015cd5b8b0b1d667fa2f66a4da2745caef/3ac5831155da80986cf7cd45889ce5015cd5b8b0b1d667fa2f66a4da2745caef-json.log
但是,当我cat
该文件时,无法找到它。
cat \`docker inspect -f {{.LogPath}} es5\`
cat:/var/lib/docker/containers/3ac5831155da80986cf7cd45889ce5015cd5b8b0b1d667fa2f66a4da2745caef/3ac5831155da80986cf7cd45889ce5015cd5b8b0b1d667fa2f66a4da2745caef-json.log:没有这样的文件或目录
我错过了什么吗?
答案 0 :(得分:9)
容器日志存储在Docker for Mac VM中,而不是存储在MacOS主机上。您可以使用screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty
命令进入VM,然后捕获日志文件。
有关其他信息,请参阅Screen Commands for Docker for Mac
答案 1 :(得分:4)
要访问/ var / lib / docker / containers /,请尝试
screen ~/HOME/Library/Containers/com.docker.docker/Data/vms/0/tty
在新版本的docker中。
答案 2 :(得分:0)
这对我有用 -
chmod 400 ~/Library/Containers/com.docker.docker/Data/vms/0/tty
screen $(cat ~/Library/Containers/com.docker.docker/Data/vms/0/tty)
。按Enter