1.查看docker磁盘占用

  1. docker system df

该命令会展示镜像、容器、Volume等所占据的空间。
官方文档:https://docs.docker.com/engine/reference/commandline/system_df/

2.回收空间

  1. docker system prune

该命令会删除所有停止的镜像。参考:https://blog.csdn.net/QQ401476683/article/details/82848757
也可执行以下命令,只清除未被使用的Image:

  1. docker image prune -a

官方文档:https://docs.docker.com/engine/reference/commandline/image_prune/

3.查看docker日志文件占用

  1. du -d1 -h /var/lib/docker/containers | sort -h

4.删除日志

  1. cat /dev/null > /var/lib/docker/containers/container_id/container_log_name

此步需要特别小心,容易造成系统死机,尤其是在日志过大、磁盘剩余量极小的时候。参考:https://colobu.com/2018/10/22/no-space-left-on-device-for-docker/

5.限制Docker日志大小

新建/etc/docker/daemon.json,若有就不用新建了。添加log-dirver和log-opts参数,样例如下:

  1. {
  2. "log-driver":"json-file",
  3. "log-opts": {"max-size":"500m", "max-file":"3"}
  4. }