删除关闭的容器、无用的数据卷和网络dangling镜像(即无tag的镜像)和未使用的volume

  1. docker的服务器突然发现磁盘满了,因为服务器的数据都是挂了数据盘的,根磁盘应该不会满的,最后用du -ah --max-depth=1 /var/lib/docker查看了下是docker战用了磁盘。
    在这里插入图片描述
  2. docker system df查看docker磁盘使用情况
    在这里插入图片描述
  3. docker system prune命令可以用于清理磁盘,删除关闭的容器、无用的数据卷和网络,以及dangling镜像(即无tag的镜像),不过这次是volume占用的磁盘,应该用docker volume rm $(docker volume ls -qf dangling=true)删除未使用的volume,删除后磁盘恢复。
    在这里插入图片描述

清理docker日志占用的磁盘

  1. 有一次按上面操作后磁盘还是满的,docker system df查看发现docker只有镜像占用了磁盘,
    在这里插入图片描述
  2. du -ah --max-depth=1 /var/lib/docker查看/var/lib/docker目录大小
    在这里插入图片描述
  3. find /var/lib/docker -size +18G查找发现是日志文件占用了磁盘,删除后恢复大小。
    在这里插入图片描述
  4. docker-compose.yml文件增加如下配置限制日志大小
 logging:
      driver: "json-file"
      options:
        max-size: "3g"

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐