Docker镜像体积变大问题

Blade 未结 1 679
ccc
ccc 2021-11-23 17:18

https://sns.bladex.cn/q-6815.html

还是这个修改日志输出的问题。


回复是这样的

docker本身的日志过大,应该和logback关系不大,具体看下上面的帖子试试

这个答案可能并不是我们服务的实际情况。


现在系统中每分钟都调用一次,deploy.sh里面的rmLogs的方法,这个方法可以清理Docker的日志。

使用docker system df -v命令可以看到容器的体积很大。截图中的500m的体积,是清理半小时后的大小。

图片.png

使用docker exec -it /bin/shi查看文件,可以看到镜像内的info*.log文件非常大。这个路径和logback里面配置的日志输出路径是一样的。这个日志文件应该怎么清理或者不输出呢?

图片.png


1条回答
  •  admin
    admin (楼主)
    2021-11-24 20:34

    这回描述相对清晰,的确是log本身的问题,应该是你们打的log较多,访问量大,所以日志堆积的就多了。你可以参考dev的log配置方式,这种情况只会在控制台打印,并不会生成实际的log文件,具体看下面的配置。

    
    
        
        
        
    
        
        
        
        
        
        
        
        
            
                ${CONSOLE_LOG_PATTERN}
                utf8
            
        
    
        
            
                
                
                    ${DESTINATION}
                    
                    
                        
                            
                                UTC
                            
                            
                                
                                    {
                                    "traceId": "%X{traceId}",
                                    "requestId": "%X{requestId}",
                                    "accountId": "%X{accountId}",
                                    "tenantId": "%X{tenantId}",
                                    "logLevel": "%level",
                                    "serviceName": "${springAppName:-SpringApp}",
                                    "pid": "${PID:-}",
                                    "thread": "%thread",
                                    "class": "%logger{40}",
                                    "line":"%L",
                                    "message": "%message"
                                    }
                                
                            
                            
                            
                        
                    
                
            
        
    
        
        
            
            
        
    
        
        
    
    
        
        
        
        
        
        
    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
        
        
    
    
    


    如果不需要elk日志推送,可以使用如下配置

    
    
        
        
        
    
        
        
        
        
        
        
        
        
            
                ${CONSOLE_LOG_PATTERN}
                utf8
            
        
    
    
        
        
            
            
        
    
        
        
    
    
        
        
        
        
        
        
    
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    
        
        
    
    
    


    0 讨论(0)
提交回复