当docker-compose失败时如何查看错误日志

16

我有一个Docker镜像,它启动entrypoint.sh脚本

该脚本检查项目是否配置正确

如果一切正常,容器将会启动,否则我会收到以下错误:

echo "Danger! bla bla bla"
exit 1000

现在如果我以这种模式启动容器:

docker-compose up

我正确地看到了这个错误:

Danger! bla bla bla

但我需要以守护程序模式启动容器:

docker-compose up -d

如何只在出错时显示日志?

1个回答

21
docker-compose up -d中,-d标志表示分离模式,而不是守护进程模式。
分离模式下,您的服务(例如容器)在终端的后台运行。您无法在此模式下查看日志。 要查看所有服务的日志,您需要运行以下命令:
docker-compose logs -f
-f 标志意味着“跟踪日志输出”。 这将输出您在docker-compose.yml中运行的每个服务的所有日志。
据我的理解,您想启动您的服务:
docker-compose up -d

为了让服务在后台运行并获得干净的控制台输出。
如果你只想打印日志中的错误信息,可以使用管道符号并使用grep命令搜索错误:
docker-compose logs | grep error

这将输出由docker服务记录的所有错误。

您可以在此处找到与docker-compose up命令相关的官方文档,以及与logs命令相关的官方文档此处。关于日志处理的更多信息请参见文章。相关答案此处


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接