gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 19:44:47 34 4
gpt4 key购买 nike

环境
Docker版本19.03.13,内部版本4484c46d9d
docker-compose版本1.22.0,构建f46880fe
发生了什么
我开发了非常简单的RESTful API,可以使用Gin进行学习。
当我发现我的代码中不需要tty = true(在docker-compose.yml中)并将其删除时,日志高亮部分奇怪地消失了。
删除tty = true之前
Before deleteing tty=true
删除tty = true之后
After deleting tty=true
代号
docker-compose.yml

version: '3'

volumes:
vendor:

services:
api:
build:
context: .
dockerfile: Dockerfile
ports:
- 3001:3001
tty:
true
depends_on:
- db
db:
image: postgres:alpine
environment:
POSTGRES_USER: gorm
POSTGRES_PASSWORD: gorm
POSTGRES_DB: gorm
POSTGRES_HOST: db
ports:
- 5432:5432
其他代码
https://gist.github.com/Asuha-a/521b37c8ac56f5c52a1d4b5a76b2726d
我想知道
我不知道原因。
你怎么看?

最佳答案

这通过评论解决。
DavidMaze:代码可以判断stdout是否为tty,并据此做出有关着色的决策。在日志文件中,您通常不希望使用颜色转义码,这会使文件更难以阅读。
我:我不确定我是否理解您的评论,特别是第一句话中的主题。 “代码”是否表示终端代码?
DavidMaze:在这种情况下,我的意思是Gin正在使用日志记录库。您可以调用一个函数(Google会很快找到我这个库),然后告诉stdout是终端还是文件,管道还是其他东西。

关于docker - 为什么tty = true(在docker-compose.yml中)在Gin应用程序上突出显示日志?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64238374/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com