以下都是在说linux主机的状况:
如果是还没有创建容器的状况下使用的方法已经有容器并且使用docker compose并且有volume mount在外部主机的状况首先第一种就很单纯
先去/etc/docker底下,创建deamon.json{ "log-driver": "json-file", # docker预设都是json格式 "log-opts": { "max-size": "1m", # 你想要一个log file有多大? "max-file": "3" # 最多几个log file存在 }}
接着输入命令去重启docker servicesystemctl daemon-reload # 通常docker的配置没有在 /etc/systemd 下所以可以不用输入这句systemctl restart docker # 重启docker服务
创建容器后,可以去/var/lib/docker/containers下 容器的id名称,去看里面的hostconfig.json"LogConfig": { "Type": "json-file", "Config": { # 这里应该要有配置好的部分 }}
有出现的话就成功了~
那第二种情境,刚刚提到这个配置要新创的容器才能应用,那可能会想到说我在docker compose down以及docker compose up的过程就会重新创建容器了啊~
但是如果有做持久化的话会有相关的volume,除非都一起删掉不然无法
但是很多状况下不可能去删除
所以可以更改docker_compose.yml
logging: driver: "json-file" options: max-size: "10m" max-file: "3"
重新compose就可以应用了~