Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么tty=true(在docker compose.yml中)在Gin应用程序上突出显示日志? 环境_Docker_Go_Docker Compose - Fatal编程技术网

为什么tty=true(在docker compose.yml中)在Gin应用程序上突出显示日志? 环境

为什么tty=true(在docker compose.yml中)在Gin应用程序上突出显示日志? 环境,docker,go,docker-compose,Docker,Go,Docker Compose,Docker版本19.03.13,内部版本4484c46d9d docker compose版本1.22.0,构建f46880fe 发生了什么事 我开发了非常简单的RESTful API,通过使用Gin进行学习。 当我注意到我的代码中不需要tty=true(在docker compose.yml中)并删除它时,日志高亮显示奇怪地消失了 删除之前tty=true 删除tty=true后 代码 docker compose.yml 版本:“3” 卷数: 小贩: 服务: 应用程序编程接口: 建造:

Docker版本19.03.13,内部版本4484c46d9d
docker compose版本1.22.0,构建f46880fe

发生了什么事 我开发了非常简单的RESTful API,通过使用Gin进行学习。
当我注意到我的代码中不需要tty=true(在docker compose.yml中)并删除它时,日志高亮显示奇怪地消失了

删除之前tty=true

删除tty=true后

代码 docker compose.yml

版本:“3”
卷数:
小贩:
服务:
应用程序编程接口:
建造:
上下文:。
dockerfile:dockerfile
端口:
- 3001:3001
tty:
真的
取决于:
-分贝
db:
图片:博士后:阿尔卑斯山
环境:
POSTGRES_用户:gorm
POSTGRES_密码:gorm
博士后数据库:gorm
POSTGRES_主机:db
端口:
- 5432:5432
其他代码

我想知道 我不知道原因。
你怎么看?

这可以通过评论来解决


DavidMaze:代码可以判断stdout是否是tty,并相应地决定颜色。在日志文件中,您通常不需要颜色转义码,这会使文件更难读取

我:我不确定我是否理解你的评论,尤其是第一句话的主题。“代码”是指终端的代码吗


DavidMaze:在这种情况下,我的意思是日志库Gin正在使用。你可以调用一个函数(Google会很快找到这个库),然后告诉我stdout是终端还是文件,还是管道或其他东西。

这可以通过注释来解决


DavidMaze:代码可以判断stdout是否是tty,并相应地决定颜色。在日志文件中,您通常不需要颜色转义码,这会使文件更难读取

我:我不确定我是否理解你的评论,尤其是第一句话的主题。“代码”是指终端的代码吗


DavidMaze:在这种情况下,我的意思是日志库Gin正在使用。你可以调用一个函数(Google很快找到了这个库),告诉我stdout是终端还是文件,还是管道或其他东西。

你可以参考这个@ShubhamSrivastava谢谢。事实证明,问题不仅仅发生在ginCode上,它可以判断stdout是否是tty,并相应地决定着色。在日志文件中,您通常不需要颜色转义码,这会使文件更难阅读。@DavidMaze我不确定我是否理解您的评论,尤其是第一句中的主题。“Code”是指终端的代码吗?在本例中,我指的是Gin正在使用的日志库。你可以调用一个函数(Google很快找到我),告诉我stdout是一个终端还是一个文件,还是一个管道或其他东西。你可以参考这个@ShubhamSrivastava谢谢。事实证明,问题不仅仅发生在ginCode上,它可以判断stdout是否是tty,并相应地决定着色。在日志文件中,您通常不需要颜色转义码,这会使文件更难阅读。@DavidMaze我不确定我是否理解您的评论,尤其是第一句中的主题。“Code”是指终端的代码吗?在本例中,我指的是Gin正在使用的日志库。你可以调用一个函数(Google很快找到我),告诉我stdout是一个终端还是一个文件,还是一个管道或者其他什么。