sth*_*mps 69 docker docker-compose
当我使用时,docker-compose up我可以在我的docker-compose.yml文件中看到所有容器的日志.
但是,当我使用时,docker-compose run app我只看到控制台输出,app但没有任何app依赖的服务.如何查看其他服务的日志输出?
Bru*_*eri 110
请参阅泊坞日志
您可以在分离模式下启动Docker compose,然后将自己附加到所有容器的日志中.如果您已完成日志记录,则可以在不关闭服务的情况下从日志输出中分离出来.
docker-compose up -d以分离模式(-d)启动所有服务(您不会在分离模式下看到任何日志)docker-compose logs -f -t于重视自己的日志中所有正在运行的服务,而-f意味着你跟随日志输出和-t选项使您的时间戳(见泊坞参考)Ctrl + z或Ctrl + c以分离从日志输出自己没有关闭正在运行的容器如果您对单个容器的日志感兴趣,可以使用docker关键字代替:
docker logs -t -f <name-of-service>保存输出
要将输出保存到文件,请将以下内容添加到logs命令:
docker-compose logs -f -t >> myDockerCompose.logInv*_*ble 11
如果要查看来自多个容器的输出日志.例如.假设您有API容器和门户容器,那么您可以执行以下操作:
docker-compose logs -t -f --tail 5
其中5代表两个日志的最后5行.
不幸的是我们需要docker-compose logs单独运行docker-compose run。为了让它可靠地工作,我们需要抑制docker-compose run退出状态,然后重定向日志并以正确的状态退出。
#!/bin/bash
set -euo pipefail
docker-compose run app | tee app.log || failed=yes
docker-compose logs --no-color > docker-compose.log
[[ -z "${failed:-}" ]] || exit 1
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
63557 次 |
| 最近记录: |