【问题标题】:Docker error : no space left on deviceDocker 错误:设备上没有剩余空间
【发布时间】:2015-08-16 18:18:42
【问题描述】:

我通过以下方式在 Debian 7 机器上安装了 docker

$ echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list
$ sudo apt-get update
$ curl -sSL https://get.docker.com/ubuntu/ | sudo sh

之后,当我第一次尝试创建图像时,它失败并出现以下错误

 time="2015-06-02T14:26:37-04:00" level=info msg="[8] System error: write /sys/fs/cgroup/docker/01f5670fbee1f6687f58f3a943b1e1bdaec2630197fa4da1b19cc3db7e3d3883/cgroup.procs: no space left on device"

这里是码头工人信息

Containers: 2
Images: 21
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 25
Dirperm1 Supported: true
Execution Driver: native-0.2
Kernel Version: 3.16.0-0.bpo.4-amd64
Operating System: Debian GNU/Linux 7 (wheezy)
CPUs: 2
 Total Memory: 15.7 GiB


WARNING: No memory limit support
 WARNING: No swap limit support

如何增加内存?系统配置存储在哪里?

来自 Kal 的建议:

当我摆脱所有图像和容器时,它确实释放了一些空间,并且图像构建运行的时间更长,然后失败并出现相同的错误。那么问题来了,这里指的是哪个空间,如何配置呢?

【问题讨论】:

  • 有时,您可以点击per-container size limit,具体取决于您的存储后端。该链接显示了如何为 devicemapper 修复它。
  • 我的磁盘没有 inode 时出现此错误。检查df -ih
  • @KevinSmyth 非常感谢您指出这一点。在此之前,我什至不知道 inode 限制的重要性。
  • 我发现这个答案对我有帮助 (stackoverflow.com/a/67759303/10869929)

标签: ubuntu memory docker temp


【解决方案1】:

一次性删除所有未使用的容器、卷、网络和映像 (https://docs.docker.com/engine/reference/commandline/system_prune/):

docker system prune -a -f --volumes

如果还不够,可以先移除正在运行的容器:

docker rm -f $(docker ps -a -q)
docker system prune -a -f --volumes

增加 /var/lib/docker 或使用其他空间更大的位置也是摆脱此错误的好方法(请参阅How to change the docker image installation directory?

【讨论】:

  • docker system prune 不会删除卷。
  • docker system prune -a -f --volumes 将删除卷。
  • docker system prune -af --volumes 将清理之前创建的所有 docker 资源。
  • 到底是什么。 docker system prune 删除了一些 7GB 的东西。 docker system prune --volumes 一些额外的 4GB 左右,然后 docker system prune -a -f --volumes 删除了 575.5GB 的内容。笏。这是磁盘内容分析器无法捕获的所有空间。这个答案应该更高。 -a-f 标志可以产生巨大的影响。
【解决方案2】:

在我的例子中,我运行了docker system df 来找出哪个组件占用了更多空间,然后我执行了docker system prune -a 来清理所有悬空的容器、图像等。最后,我运行了docker volume rm $(docker volume ls -qf dangling=true)清理悬空的卷。

以下是按顺序执行的命令。

docker system df
docker system prune -a
docker volume rm $(docker volume ls -qf dangling=true)

【讨论】:

  • TIL docker system df,谢谢!
【解决方案3】:

关于 prune 语句的帖子太多了。确实,此命令将清理 docker 文件,如果实际存储空间受到阻碍,它不会修复您的系统。对我来说,问题是服务器的存储空间已经满了。因此我有两个选择。

选项 1:清理现有空间

  1. 运行其他人所说的所有系统修剪命令。
  2. df -H,还有多少空间?
  3. 使用 du --block-size=M -a / | sort -n -r | head -n 20 检查系统上占用这么多空间的内容,这将显示 20 个最大的文件。
  4. 删除文件或将它们移出系统。

选项 2:获得更多空间

  1. 向硬盘驱动器添加更多空间,然后扩展。如果你像我一样只有一个 HD,我必须挂载名为“gparted”的操作系统并扩展驱动器。

【讨论】:

    【解决方案4】:

    如果您已经清理了未使用的容器,则使用

    docker system prune -a
    

    请务必检查您是否有不健康的容器。他们可以以一种奇怪且不可预测的方式行事。就我而言,正因为如此,我得到了这个错误,即使有大量的磁盘空间。

    docker ps -a 将列出所有容器。如果其中任何一个看起来像这样:

    CONTAINER ID   IMAGE          COMMAND   CREATED          STATUS                     PORTS           NAMES
    4c01db0b339c   ubuntu:12.04   bash      17 seconds ago   Up 16 seconds (unhealthy)  3300-3310/tcp   webapp
    

    您需要重新启动 docker 守护进程。

    【讨论】:

      【解决方案5】:

      目前的最佳做法是:

      docker system prune
      

      在接受后果之前注意此命令的输出:

      WARNING! This will remove:
        - all stopped containers
        - all networks not used by at least one container
        - all dangling images
        - all dangling build cache
      
      Are you sure you want to continue? [y/N]
      

      换句话说,继续执行此命令是永久性的。请记住,最佳实践是对待stopped containers as ephemeral,即您应该使用 Docker 设计您的工作,以不保留这些停止的容器。如果您不主动调试容器,您可能需要考虑在运行时使用--rm flag

      请务必阅读 this answer,回复:Volumes

      如果docker system prune 不适合您,您可能也对this answer 感兴趣。

      【讨论】:

      • 正如 Kevin Smyth 所指出的,这个错误可能是由于你用 df -ih 看到的 inode 用完了。要进行更严格的诊断,请输入ncdu,然后按 c 来查看文件数量,然后按 C 来按文件数量排序,以粗略估计正在使用所有 inode 的内容。如果问题确实是 docker,那么使用最多 inode 的目录会立即显现出来。
      • 真的应该对此进行投票并给出答案,因为它是正确的方法。建筑环境被污染了,现在在这里hack,可能会暂时修复它,但正确的方法应该是docker system prune
      • @zhrist 哈哈我同意
      • @coler-j 也许......如果您正在考虑最初的高度具体的问题。但是,让我们彼此诚实。大多数人发现这个问题并不是因为 OP 的用例晦涩难懂,而是因为他们的 docker 缓存空间不足。
      • 请注意,随着时间的推移,非悬空图像会占用大量空间。在上述优秀答案之后,根据需要检查docker imagesdocker rmi
      【解决方案6】:

      我去了 docker 设置并更改了可用的图像空间。使用docker build 创建新图像时达到了极限。所以我只是增加了可用的数量。

      【讨论】:

        【解决方案7】:

        我刚碰到这个。我在 Ubuntu 20.04 上。什么有效?重新安装 Docker:

        sudo apt-get purge docker-ce docker-ce-cli containerd.io
        sudo apt-get install docker-ce docker-ce-cli containerd.io
        

        有点粗鲁,我知道。我试过修剪 Docker,但还是不行。

        【讨论】:

        • 重装docker,因为磁盘满了,真的不是解决办法。
        【解决方案8】:

        1.移除容器

        $ docker rm $(docker ps -aq)

        2。删除图片:

        $ docker rmi $(docker images -q)

        您可以执行以下步骤,而不是执行第 1 步和第 2 步:

        docker system prune

        此命令将删除:

        • 所有停止的容器
        • 至少一个容器未使用所有卷
        • 至少一个容器未使用所有网络
        • 所有悬空图像

        【讨论】:

          【解决方案9】:

          在我的情况下,我没有那么多图像/容器,但是构建缓存正在填满我的 Docker 磁盘。

          你可以通过运行看到这是问题

          docker system df
          

          输出:

          TYPE                TOTAL               ACTIVE              SIZE                RECLAIMABLE
          Images              22                  13                  7.581GB             3.899GB (51%)
          Containers          15                  0                   2.166GB             2.166GB (100%)
          Local Volumes       4                   4                   550.2MB             0B (0%)
          Build Cache         611                 0                   43.83GB             43.83GB!!!!!!!!!
          

          下面的命令解决了这个问题

          docker builder prune
          

          【讨论】:

          • 一个真正的好答案。删除构建无助于清理磁盘空间。 docker builder prune 删除所有未使用的构建缓存
          【解决方案10】:

          不要只运行docker prune 命令。它将删除所有 docker 网络、容器和图像。因此,您最终也可能会丢失重要数据。

          错误显示“设备上没有剩余空间”,所以我们只需要释放一些空间。

          释放一些空间的最简单方法是删除悬空图像。

          当不使用旧创建的图像时,这些图像被称为悬空图像,或者还有一些缓存图像可以删除。

          使用以下命令。 列出所有悬空图像的图像 ID。

          docker images -f "dangling=true" -q
          

          按图像 ID 删除图像。

          docker rmi IMAGE_ID
          

          这样你就可以腾出一些空间并再次开始使用 docker hack :)

          【讨论】:

          • 运行此命令将遍历来自dangling=true 命令的所有结果:docker images -f "dangling=true" -q | xargs -I {} docker rmi {}
          • 更简单的是docker images -f "dangling=true" -q | xargs docker rmi
          【解决方案11】:

          Docker for Mac

          所以 docker system prunedocker system prune --volumes 在其他答案中建议每次都释放 一些 空间,但最终每次我运行任何东西时都会遇到错误。

          真正解决根本问题的方法是删除 Docker for Mac 用于存储的 Docker.raw 文件,然后重新启动它。

          要找到该文件,请打开 Docker for Mac 并转到 *

          Preferences > Resources > Advanced > Disk Image Location
          

          *这是针对版本 2.2.0.5,但在旧版本上应该类似

          在较新版本的 Docker for Mac** 上,它会在 UI 中向您显示磁盘上该文件的实际大小,以及它的最大分配大小。你可能会看到它是巨大的。例如在我的机器上是 41GB

          **在旧版本中,它不会在 UI 中向您显示实际的磁盘使用情况,MacOS Finder 总是将文件大小显示为最大分配大小。您可以通过在终端中打开目录并运行du -h Docker.raw来检查磁盘上的实际大小

          我删除了Docker.raw,重新启动了 Docker for Mac,文件再次自动创建并恢复到 0GB

          一切都像以前一样继续工作,当然我丢失了我的 Docker 缓存。正如预期的那样,在运行了一些 Docker 命令后,文件又开始被几 GB 的东西填满,但 远不及 41GB。


          更新

          几个月后,我的Docker.raw 再次填充到类似大小。所以这种方法确实有效,但必须每隔几个月重复一次。对我来说这很好。

          关于为什么会这样的注释 - 我必须假设它是 Docker for Mac 中的一个错误。看起来docker system prune / docker system prune --volumes 确实应该完全清除该文件的内容,但似乎该文件积累了这些命令无法删除的其他内容。无论如何,手动删除它可以解决问题!

          【讨论】:

          • 我收到一个套接字错误,说守护程序无法连接。我不得不转移到别的东西上,但是当我今天再次检查它时,它正在工作。忽略上面的评论,对此感到抱歉。
          • 谢谢!这在 Mac Mojave 10.14.6 上对我有用。所有其他删除系统、图像、卷等的命令都清理了一些空间,但不允许我构建,这终于奏效了
          • 路径:/Users/<your-username>/Library/Containers/com.docker.docker/Data/vms/0/Docker.raw
          【解决方案12】:

          如果您使用的是 Docker 桌面,您可以通过转到 Docker 的首选项,在高级设置中增加磁盘映像大小

          这是来自 macOS 的屏幕截图:

          【讨论】:

          • 这是迄今为止最好的选择,不是每次,我都想取消缓存,重新开始,尤其是在我的网速慢的情况下?。我有空间,所以让我利用我的磁盘。
          【解决方案13】:

          这可能是由于默认存储空间设置为 40GB(默认路径,/var/lib/docker)

          您可以更改存储卷以指向不同的路径

          • 编辑文件-> /etc/sysconfig/docker-storage
          • 更新下一行(如果不存在则添加)

          DOCKER_STORAGE_OPTIONS='--storage-driver=overlay --graph=CUSTOM_PATH'

          • 重启泊坞窗 systemctl 停止泊坞窗 systemctl 守护进程重载 systemctl 启动泊坞窗

          如果您运行命令 docker info (它应该将存储驱动程序显示为覆盖)

          【讨论】:

            【解决方案14】:
            $ docker rm $(docker ps -aq)
            

            这对我有用

            docker system prune 
            

            使用最新版本似乎是更好的选择

            【讨论】:

              【解决方案15】:

              对我来说docker system prune 成功了。我正在运行 mac os。

              【讨论】:

              • 这实际上也适用于我,当我试图清理 Mac OS 上已用的空间时。使用命令docker volume ls 没有返回任何内容,所以看起来存储主要用于缓存和悬空图像。
              【解决方案16】:

              我运行以下命令。

              之后无需重建图像。

              docker rm $(docker ps -qf 'status=exited')
              docker rmi $(docker images -qf "dangling=true")
              docker volume rm $(docker volume ls -qf dangling=true)
              

              这些删除退出/悬空容器和悬空卷。

              【讨论】:

                【解决方案17】:

                如前所述,

                docker system prune
                

                有帮助,但在 Docker 17.06.1 及更高版本中无需修剪未使用的卷。 从 Docker 17.06.1 开始,以下命令也会修剪卷:

                docker system prune --volumes
                

                来自 Docker 文档:https://docs.docker.com/config/pruning/

                docker system prune 命令是修剪镜像、容器和网络的快捷方式。在 Docker 17.06.0 及更早版本中,卷也会被修剪。在 Docker 17.06.1 及更高版本中,您必须为 docker system prune 指定 --volumes 标志以修剪卷。

                如果您想修剪卷并保留图像和容器:

                docker volume prune
                

                【讨论】:

                • docker volume prune 今天在这里所有其他解决方案都停止工作时帮助了我。
                • 巨大的帮助 - 除了修复错误之外,这还释放了我硬盘上的许多空间。
                • docker system prune --volumes 为我工作,但我必须先手动停止并删除所有容器。否则,prune 命令会挂起并且无法删除卷。也许我有一个无响应的容器。
                • docker system prune --all --volumes 帮了我
                【解决方案18】:

                我在 RHEL 机器上也遇到过这个问题。我在 stack-overflow 和 docker-hub 社区的任何地方都没有找到任何合适的解决方案。 如果您在执行以下命令后仍遇到此问题:

                docker system prune --all

                最终奏效的解决方案:

                1. 码头信息
                  • 检查当前 docker 存储驱动程序
                  • 我的是:存储驱动程序:devicemapper;如果您有存储驱动程序作为 overlay2,则无需担心。解决方案仍然适合您。
                2. df -h
                  • 这是为了检查机器上可用的文件系统以及它们的挂载路径。 两个挂载路径有备注:
                  • /dev/mapper/rootvg-var 7.6G 1.2G 6.1G 16% /var
                  • /dev/mapper/rootvg-apps 60G 9.2G 48G 17% /apps
                  • 注意- 默认 docker 存储路径是 /var/lib/docker。它有大约 6 GB 的可用空间,因此存在所有与空间相关的问题。所以基本上,我必须将默认存储移动到可用空间更多的其他存储。对我来说,它的文件系统路径“/dev/mapper/rootvg-apps”安装在/apps 上。现在的任务是将 /var/lib/docker 移动到 /apps/newdocker/docker 之类的位置。
                3. mkdir /apps/newdocker/docker
                4. chmod -R 777 /apps/newdocker/docker
                5. 更新 linux 上的 docker.serive 文件,该文件位于:/usr/lib/systemd/system
                  • vi /usr/lib/systemd/system/docker.service
                6. 如果存储设备是 devicemapper ,注释现有的 ExecStart 行并在 [Service] 下添加以下内容:
                  • ExecStart=
                  • ExecStart=/usr/bin/dockerd -s devicemapper --storage-opt dm.fs=xfs --storage-opt dm.basesize=40GB -g /apps/newdocker/docker --exec-opt native.cgroupdriver =cgroupfs
                7. 或者,如果存储设备是 overlay2:
                  • 只需在现有的 ExexStart 语句中添加 -g /apps/newdocker/docker。
                  • 类似 ExecStart=/usr/bin/dockerd -g /apps/newdocker/docker -H fd:// --containerd=/run/containerd/containerd.sock
                8. rm -rf /var/lib/docker (它会删除所有现有的 docker 数据)
                9. systemctl 停止泊坞窗
                10. ps 辅助 | grep -i 码头工人 | grep -v grep
                  • 如果上述命令没有产生输出,请通过以下命令重新加载 systemd 守护进程。
                11. systemctl daemon-reload
                12. systemctl 启动泊坞窗
                13. 码头信息
                  • 查看可用数据空间:将 docker 挂载到新文件系统后为 62.15GB。
                14. 完成

                【讨论】:

                • 我一直在寻找有关如何实现这一目标的文档!谢谢你,先生。我们可以将此标记为答案之一吗?
                【解决方案19】:

                在我的情况下,安装 ubuntu-server 18.04.1 [出于某种奇怪的原因] 创建了一个大小仅为 4GB 而不是 750GB 的 LVM 逻辑卷。 因此,在拉取图像时,我会收到“设备上没有剩余空间”错误。 修复很简单:

                lvextend -l 100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
                resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
                

                【讨论】:

                【解决方案20】:
                1. 干净的悬挂图像docker rmi $(docker images -f "dangling=true" -q)
                2. 删除不需要的卷
                3. 删除未使用的图像
                4. 移除未使用的容器

                【讨论】:

                • 对我来说,问题在于图像太多。清理干净后,docker 又开始工作了。
                【解决方案21】:

                似乎有几种方法可以发生这种情况。我遇到的问题是 docker 磁盘映像已达到其最大大小(如果您想查看 OSX 中的大小,则 Docker Whale -> Preferences -> Disk)。

                我提高了限制,并且很高兴。我确信清理未使用的图像也可以。

                【讨论】:

                  【解决方案22】:

                  使用以下命令清理 Docker:

                  docker images --no-trunc | grep '<none>' | awk '{ print $3 }' \
                  | xargs docker rmi
                  

                  【讨论】:

                    【解决方案23】:

                    Docker 会留下悬空的图像,可能会占用您的空间。要在 Docker 之后进行清理,请运行以下命令:

                    docker image prune [-af if you want to force remove all images]
                    

                    或使用旧版本的 Docker:

                    docker rm $(docker ps -q -f 'status=exited')
                    docker rmi $(docker images -q -f "dangling=true")
                    

                    这将删除退出的和悬空的图像,这有望清除设备空间。

                    【讨论】:

                    • docker image prune -a 在我使用minikube ssh 首先通过 SSH 连接到 VM 之后,使用 minikube 运行我的 docker 容器为我工作。 docker 镜像在我的虚拟机中占用了 8GB。
                    【解决方案24】:

                    如果您通过 Docker Toolkit 使用 boot2docker 映像,则问题源于 boot2docker 虚拟机空间不足。

                    当您执行docker import 或添加新图像时,图像会被复制到可能已满的/mnt/sda1

                    检查映像中可用空间的一种方法是通过 ssh 进入 vm 并运行 df -h 并检查 /mnt/sda1 中的剩余空间

                    ssh 命令是 docker-machine ssh default

                    一旦您确定确实是空间问题,您可以根据此问题的某些答案中的说明进行清理,或者您可以选择调整 boot2docker 映像本身的大小,方法是增加 @ 上的空间987654326@

                    您可以按照此处的说明调整图像大小 https://gist.github.com/joost/a7cfa7b741d9d39c1307

                    【讨论】:

                      【解决方案25】:

                      我遇到了同样的错误并以这种方式解决:

                      1 .删除 Docker 中的孤立卷,可以使用内置的 docker volume 命令。内置命令还会删除 /var/lib/docker/volumes 中不是卷的任何目录,因此请确保您没有在其中放置任何要保存的内容。

                      警告如果您有一些数据要保留,请务必小心

                      清理:

                      $ docker volume rm $(docker volume ls -qf dangling=true)
                      

                      附加命令:

                      列出悬空卷:

                      $ docker volume ls -qf dangling=true
                      

                      列出所有卷:

                      $ docker volume ls
                      

                      2 。还要考虑删除所有未使用的图像。

                      首先删除&lt;none&gt; 图像(这些图像有时会在构建图像时生成,如果由于某种原因图像构建被中断,它们会保留在那里)。

                      这是我用来删除它们的好脚本

                      docker rmi $(docker images | grep '^<none>' | awk '{print $3}')
                      

                      然后,如果您使用 Docker Compose 为每个项目在本地构建镜像。您最终会得到很多通常以您的文件夹命名的图像(例如,如果您的项目文件夹名为 Hello,您会找到图像名称 Hello_blablabla)。所以也考虑删除所有这些图像

                      您可以编辑上述脚本以删除它们或使用手动删除它们

                      docker rmi {image-name}

                      【讨论】:

                      • 请注意:Mac 上的 awk 命令必须用单引号括起来,而不是双引号,否则会被忽略。
                      • 我在 MAC 上,它对我有用!!但感谢您的建议。
                      • 多么奇怪!它对我不起作用。只是打印出与 grep 相同的结果。呃,好吧。奇怪的事情发生了。
                      • 此时,您可以对图像使用相同的过滤器。 docker images -qf dangling=true 当然也可以用docker rmi $(docker images -qf dangling=true) 删除它们。
                      • 我收到一个错误:“docker volume rm”需要至少 1 个参数。
                      【解决方案26】:

                      你也可以使用:

                      docker system prune
                      

                      或仅适用于卷:

                      docker volume prune
                      

                      【讨论】:

                      • --volumes 添加到docker system prune 就可以了
                      【解决方案27】:

                      如果它只是 Docker 的测试安装(即不是生产)并且您不关心进行核清洁,您可以:

                      清洁所有容器: docker ps -a | sed '1 d' | awk '{print $1}' | xargs -L1 docker rm

                      清理所有图像: docker images -a | sed '1 d' | awk '{print $3}' | xargs -L1 docker rmi -f

                      同样,我在开发 Docker 时在我的 ec2 实例中使用它,而不是在任何严肃的 QA 或生产路径中。最棒的是,如果你有 Dockerfile,很容易重建和或docker pull

                      【讨论】:

                      • 在我的 boot2docker 实例中,我必须调用 docker images -a | sed '1 d' | awk '{print $3}' | xargs docker rmi -fxargs 的 OS X BSD 版本支持 -L 选项,与 boot2docker 的版本不同。
                      • 您可以使用docker ps -a -q 等来避免文本操作,即docker rm $(docker ps -a -q); docker rmi -f $(docker images -a -q) 应该可以解决问题
                      【解决方案28】:

                      您的 cgroup 启用了 cpuset 控制器。这个控制器在 NUMA 环境中最有用,它允许精细地指定允许您的任务运行的 CPU/内存组。

                      默认情况下,未设置强制 cpuset.memscpuset.cpus,这意味着您的任务“没有剩余空间”,因此会出现错误。

                      解决此问题的最简单方法是在根 cgroup 中将 cgroup.clone_children 启用为 1。在你的情况下,它应该是

                      echo 1 > /sys/fs/cgroup/docker/cgroup.clone_children
                      

                      它基本上会指示系统从它们的父 cgroup 自动初始化容器的 cpuset.memscpuset.cpus

                      【讨论】:

                      • 这是正确答案。真正简单地将 Docker 升级到任何东西 >= Docker 1.8 应该 解决它。这与 github.com/opencontainers/runc/issues/133 有关,从问题来看,另一种潜在的解决方法是“echo 0 &gt; /sys/fs/cgroup/cpuset/system.slice/cpuset.mems
                      【解决方案29】:

                      检查 /var 上是否有可用空间,因为这是 Docker 默认存储映像文件的位置(在 /var/lib/docker 中)。

                      首先使用docker ps -a 列出所有容器(包括停止的容器)并使用docker rm 删除它们来清理东西;然后使用docker images 列出您存储的所有图像并使用docker rmi 删除它们。

                      接下来使用 docker 守护程序上的 -g 选项或通过编辑 /etc/default/docker 并将 -g 选项添加到 DOCKER_OPTS 来更改存储位置。 -g 指定“Docker 运行时”的位置,它基本上是 Docker 在构建映像和运行容器时创建的所有内容。选择一个有足够空间的位置,因为使用的磁盘空间会随着时间的推移而增长。如果您编辑/etc/default/docker,则需要重新启动 docker 守护程序才能使更改生效。

                      现在您应该能够创建一个新镜像(或从 Docker Hub 拉取一个),并且您应该会看到在您使用 -g 选项指定的目录中创建了一堆文件。

                      【讨论】:

                      • 感谢 Kal,我无法在 DOCKER_OPTS 上找到文档。 -g 选项是什么意思,应该设置什么? docker/aufs/mnt 下的东西也可以删除吗?
                      • 嘿 ruby​​,我想我从来没有找到过关于 DOCKER_OPTS 的真实文档,但是文档中到处都有关于编辑它的地方。我能找到的最接近的是在docs.docker.com/installation/ubuntulinux/… 的末尾,它谈到了在 DOCKER_OPTS 中编辑 DNS 设置。 DOCKER_OPTS 中的选项只是传递给守护进程,所以它的参考是docs.docker.com/reference/commandline/cli/#daemon。 -g 设置“Docker 运行时”的基本位置
                      • docker/aufs/mnt下的东西也可以删除吗?
                      • 不要手动删除那些东西。而是删除您不需要的任何容器(包括退出的容器)和图像。您应该在更改 -g 选项之前执行此操作。使用docker ps -a 列出所有容器(包括退出的容器),然后使用docker rm 删除它们。使用docker images 列出所有图像,然后使用docker rmi 删除它们。希望这应该清理所有东西(或大多数东西)。
                      • 谢谢,所以清除图像和容器会腾出一些空间。但是较新的图像仍然需要更多。但是 docker 运行时应该指向什么?有没有办法增加 docker 用于存储图像的空间?
                      猜你喜欢
                      • 2021-06-10
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2015-08-30
                      • 2018-06-29
                      相关资源
                      最近更新 更多