记录一些 Docker 清理的命令

查看磁盘占用

# 切换到docker文件的目录
$ cd /path/to/docker

# 查看磁盘占用情况
$ du --max-depth=1 -h .

# 查看整体磁盘使用情况
$ df -h

清理无用的镜像

手动清理


# 查看镜像列表
$ docker images

# 删除镜像
$ docker rmi $docker_image_id

清理未使用的镜像


# 一般用于再多次部署之后,清理旧的无用镜像
$ docker image pure -a

清理 volume


# 部署次数多了后,会产生大量僵尸卷,非常吃存储,需要清理
$ docker volume rm $(docker volume ls -qf dangling=true)

清理日志


$ logs=$(find /docker/containers_dir/path -name *-json.log)

$ for log in $logs 
    do
        echo "clean logs: $log"
        cat /dev/null > $log
    done

其他的清理

清理 /tmp


$ rm -rf /tmp

清理 message


$ lsof | grep messages
$ chattr -a /var/log/messages
$ echo /dev/null > /var/log/messages
$ chattr +a /var/log/messages

注意

还是补充一句,一般情况下不要随便清理,如果不知道要删除的数据是什么,不要随便删除!!!

  • Docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的操作系统上。容器完全使用沙箱机制,几乎没有性能开销,可以很容易地在机器和数据中心中运行。

    492 引用 • 926 回帖
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    946 引用 • 943 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...