【问题标题】:Docker images/containers taking up space despite clean up尽管清理,Docker 图像/容器仍占用空间
【发布时间】:2016-07-08 05:22:44
【问题描述】:

我注意到 Docker 似乎正在使用大量磁盘空间。我可以看到目录/Users/me/.docker/machine/machines/default27.4GB

我最近清理了所有未使用的图像和容器。现在,当我运行 docker ps 时,我看到没有图像在运行。

~ $ docker ps

我还可以看到我有 2 个容器可用。

~ $ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS                     PORTS               NAMES
42332s42d3        cds-abm        "/bin/bash"         2 weeks ago         Exited (130) 2 weeks ago                       evil_shockley
9ssd64ee41        tes-abm        "/bin/bash"         2 weeks ago         Exited (130) 2 weeks ago                       lonely_brattain

然后我可以看到我有 3 张图片。

~ $ docker images
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
ghr/get  latest              6708fffdd4dfa        2 weeks ago         2.428 GB
<none>                <none>              96c5974ddse18        2 weeks ago         2.428 GB
fdbh/ere         latest              bf1da53766b1        2 weeks ago         2.225 GB

这些怎么会占到几乎30GB

【问题讨论】:

    标签: docker


    【解决方案1】:

    这是因为您在停止容器时并未删除容器创建的卷。以后移除容器时使用-v

    docker rm -v <container-id>
    

    重新清理空间,您必须 ssh 进入 docker-machine 并删除所有创建的卷。为此,

    docker-machine ssh default
    sudo -i # You may not get permission to enter in to volumes directory
    cd /var/lib/docker/volumes
    rm -rf *
    

    确保您的所有容器当前都没有运行。此外,请确保您以后不需要任何这些卷(如数据库容器)。

    【讨论】:

    • 从Docker 1.9开始,你不需要SSH进入机器;您可以使用docker volume ls -f dangling=true -q | xargs docker volume rm 删除悬空卷。
    • 请注意,dangling=true 也匹配当前未挂载的命名卷。这可能会导致不可挽回的数据丢失。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-26
    • 2015-03-21
    • 2015-07-10
    • 2022-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多