macos - 在 Mac 上清除 native Docker 中的日志

标签 macos logging docker

我想摆脱我的 docker env 上的巨大容器日志文件。

在 Mac 上运行 native Docker 时,我无法找到它们。我没有使用 docker-machine (virtualbox) 的东西。我的 docker 版本是 1.13.1。

当我这样做时

docker inspect <container-name>

我看到了

"LogPath": "/var/lib/docker/containers/<container-id>/<container-id>-json.log

但我的 mac(主机)上什至没有目录/var/lib/docker。

我也看过

~/Library/Containers/com.docker.docker/

但在那里没有找到任何特定于容器的日志记录。

我可以使用tail,但对我来说并不总是那么方便。

所以问题是,如何在我的本地 Docker Mac 环境中清除容器的日志文件。

最佳答案

Docker 守护进程在单独的虚拟机中运行,因此为了清除日志,您应该执行以下步骤:


首先可以找到VM内部的日志路径,有:

docker inspect --format='{{.LogPath}}' NAME|ID


您可以使用 screen

连接到 VM
screen ~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/tty


这里可以简单的使用输出重定向来清除日志

> /var/lib/docker/containers/CONTAINER_ID/CONTAINER_ID-json.log


最后你可以通过点击 Control+a d

来分离屏幕

关于macos - 在 Mac 上清除 native Docker 中的日志,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42527291/

相关文章:

php - Linux 和基本 docker 配置

build - 在主机上挂载Docker卷,但将文件设置为 “immutable”吗?

objective-c - 对 NSTableView 的简单尝试,它没有显示任何内容

python - 如何将 Flask 出色的调试日志消息写入生产中的文件?

python - 在 Python 中记录方法调用的更好方法?

Ruby 记录器丢失格式

docker-elk - 它是如何持久化 Elasticsearch 索引的?

linux - 在 Windows/Linux 中创建 Mac 包

c++ - OpenGL:在 glEnableVertexAttribArray 之后的 INVALID_OPERATION

ios - 将消息发布到 Cocoa 应用程序的主事件循环?