docker - 如何使用 docker-compose run 查看日志输出?

标签 docker docker-compose

当我使用 docker-compose up 时,我可以在 docker-compose.yml 文件中查看所有容器的日志。

但是,当我使用 docker-compose run app 时,我只看到 app 的控制台输出,但没有看到 app 所依赖的服务.如何查看其他服务的日志输出?

最佳答案

在撰写本文时,docker-compose run命令没有提供查看其他服务日志的开关,因此您需要使用 docker-compose logs命令来查看你想要的日志。

2022 年 6 月 10 日更新

正如@Sandburg 所说,docker compose 现在已集成到 docker 中。如所述here大多数 docker compose 命令都可以调用相同的方式,只是没有破折号:

The new Compose V2, which supports the compose command as part of the Docker CLI, is now available.

Compose V2 integrates compose functions into the Docker platform, continuing to support most of the previous docker-compose features and flags. You can run Compose V2 by replacing the hyphen (-) with a space, using docker compose, instead of docker-compose.

2019 年 7 月 1 日更新

docker-compose logs <name-of-service>

适用于所有服务

docker-compose logs

使用 documentation 中的以下选项:

Usage: logs [options] [SERVICE...]

Options:

--no-color Produce monochrome output.

-f, --follow Follow log output.

-t, --timestamps Show timestamps.

--tail="all" Number of lines to show from the end of the logs for each container.

查看 docker 日志

您可以在分离模式下启动 Docker compose,稍后将自己附加到 所有容器的日志中。如果您已看完日志,您可以将自己从日志输出中分离出来而无需关闭您的服务。

  1. 使用 docker-compose up -d 以分离模式启动所有服务(-d)(在分离模式下您不会看到任何日志)
  2. 使用 docker-compose logs -f -t将自己附加所有正在运行的服务的日志,而-f表示您遵循日志输出和 -t选项为您提供时间戳(参见 Docker reference)
  3. 使用 Ctrl + zCtrl + c将自己从日志输出中分离而不关闭正在运行的容器

如果您对单个容器的日志感兴趣,可以使用 docker关键字:

  1. 使用 docker logs -t -f <name-of-service>

保存输出

要将输出保存到文件中,请将以下内容添加到日志命令中:

  1. docker-compose logs -f -t >> myDockerCompose.log

关于docker - 如何使用 docker-compose run 查看日志输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37195222/

相关文章:

docker - 在Nginx反向代理后面的docker-compose服务中请求时axios ECONNREFUSED

docker - 使用备份 dump.rdb 启动 redis 容器

postgresql - 如何在azure中映射数据库卷

python - docker python 官方示例错误

docker - 在 ubuntu 20.04 上运行 docker scan <image> 返回错误

ruby - Bundler 无法看到安装在 dockerized 环境中的 gem

macos - 用于存档的最简单的mac docker设置是什么?

docker 组成 : ensure volume mounted before running CMD

Python Flask-Restful 应用程序与 Kubernetes - 连接被拒绝

node.js - 获取https://gcp.io/v2/:x509:未知授权机构签名的证书