【Docker】Mac安装Docker Desktop导致磁盘剩余空间较少问题如何解决?

目录

一、背景描述

二、解决办法

三、清理效果

四、理论参考

解决方法

1. 清理未使用的 Docker 镜像、容器和卷

2. 查看 Docker 使用的磁盘空间

3. 调整 Docker 的存储位置

4. 增加磁盘空间

5. 调整 Docker Desktop 配置

6. 使用 Docker 清理工具(例如 Docker Compose)

参考资料


一、背景描述

MAC电脑是8+256G,磁盘空间比较少,最近老是爆磁盘提示,于是通过Tencent Lemon做磁盘分析,发现Docker的Containers目录占用磁盘空间巨大,因此需要修改Docker Desktop的设置调小磁盘占用量。

二、解决办法

三、清理效果

原本只剩12G磁盘,清理之后剩余47G,瞬间舒服了

四、理论参考

在 Mac 上安装 Docker Desktop 后出现磁盘空间不足的问题是常见的,尤其是在使用 Docker 容器和镜像时。Docker 默认会在本地磁盘上存储大量数据,包括镜像、容器、卷等。这些数据可能会迅速占用大量磁盘空间。

解决方法

下面是一些常见的解决方法,可以帮助你恢复磁盘空间并管理 Docker 使用的存储:

1. 清理未使用的 Docker 镜像、容器和卷

Docker 使用的磁盘空间很大一部分来自未使用的镜像、容器和卷。可以通过以下命令清理它们:

  • 删除停止的容器

    docker container prune

    这个命令会删除所有停止的容器。

  • 删除未使用的镜像

    docker image prune

    这个命令会删除所有未使用的镜像。

  • 删除所有未使用的容器、镜像和网络

    docker system prune

    如果你想要删除所有未使用的容器、镜像、网络以及构建缓存,可以使用 -a 标志:

    docker system prune -a
  • 删除未使用的卷: 卷存储 Docker 容器的数据,可以使用以下命令清理未使用的卷:

    docker volume prune
2. 查看 Docker 使用的磁盘空间

可以通过以下命令查看 Docker 占用的磁盘空间,并判断哪些项目占用了最多的空间:

docker system df

这个命令会显示有关镜像、容器、卷和缓存的详细磁盘空间使用情况。

3. 调整 Docker 的存储位置

Docker 默认将镜像、容器、卷等数据存储在 /var/lib/docker 目录中。如果磁盘空间不足,可以考虑将 Docker 数据目录移动到另一个磁盘或分区。

  • 创建新的存储目录(假设将数据移到 /mnt/docker):

    sudo mkdir /mnt/docker
  • 停止 Docker 服务:

    sudo systemctl stop docker
  • /var/lib/docker 目录的内容移动到新的目录:

    sudo rsync -aP /var/lib/docker/ /mnt/docker
  • 删除原目录中的数据(确保数据已经迁移完成):

    sudo rm -rf /var/lib/docker
  • 创建符号链接:

    sudo ln -s /mnt/docker /var/lib/docker
  • 重启 Docker 服务:

    sudo systemctl start docker

这将使 Docker 使用新的存储位置,从而避免了磁盘空间不足的问题。

4. 增加磁盘空间

如果你的磁盘空间本身较小,考虑增加磁盘容量:

  • 增加 Mac 硬盘的存储空间(如果是外部硬盘或 SSD)。
  • 清理其他不必要的文件和应用程序,释放出更多空间,特别是清理 Mac 上的旧文件和应用程序。
5. 调整 Docker Desktop 配置

Docker Desktop 为了优化性能可能会设置一些默认的资源限制(如 CPU、内存、磁盘空间等)。你可以调整 Docker Desktop 的配置,以减少磁盘空间的使用。

  • 打开 Docker Desktop,点击右上角的齿轮图标,进入设置界面。
  • 选择 Resources(资源),在这里可以调整 Docker 使用的磁盘大小。
  • 可以通过 Disk image location 来更改 Docker 镜像文件的存储位置。
6. 使用 Docker 清理工具(例如 Docker Compose)

如果你使用 Docker Compose 部署多个容器,可以通过以下命令来清理容器和镜像:

  • 停止并删除所有容器:

    docker-compose down
  • 删除 Docker Compose 使用的镜像和卷:

    docker-compose down --volumes --rmi all

这样可以删除所有与 Compose 项目相关的资源,释放磁盘空间。


通过这些步骤,你应该能够释放一些磁盘空间并减少 Docker 占用的存储资源。特别是清理不再使用的镜像和容器,是一种有效的方法来减少 Docker 对磁盘空间的占用。

参考资料

mac 环境docker占用空间清除_如何删除mac系统中的docker缓存-CSDN博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/60871.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL Server 查询设置 - LIKE/DISTINCT/HAVING/排序

目录 背景 一、LIKE - 模糊查询 1. 通配符 % 2. 占位符 _ 3. 指定集合 [] 3.1 表示否定 ^ 3.2 表示范围 - 4. 否定 NOT 二、DISTINCT - 去重查询 三、HAVING - 过滤查询 四、小的查询设置 1. ASC|DESC - 排序 2. TOP - 限制 3. 子查询 4. not in - 取补集&…

Android OpenGL ES详解——立方体贴图

目录 一、概念 二、如何使用 1、创建立方体贴图 2、生成纹理 3、设置纹理环绕和过滤方式 4、激活和绑定立方体贴图 三、应用举例——天空盒 1、概念 2、加载天空盒 3、显示天空盒 4、优化 四、应用举例——环境映射:反射 五、应用举例——环境映射:折射 六、应用…

pipx安装提示找不到包

执行&#xff1a; pipx install --include-deps --force "ansible6.*"WARNING: Retrying (Retry(total4, connectNone, readNone, redirectNone, statusNone)) after connection broken by NewConnectionError(<pip._vendor.urllib3.connection.HTTPSConnection …

VMware 17虚拟Ubuntu 22.04设置共享目录

VMware 17虚拟Ubuntu 22.04设置共享目录 共享文件夹挂载命令&#xff01;&#xff01;&#xff01;<font colorred>配置启动自动挂载Chapter1 VMware 17虚拟Ubuntu 22.04设置共享目录一、卸载老版本二、安装open-vm-tools<font colorred>三、配置启动自动挂载四、添…

Python用CEEMDAN-LSTM-VMD金融股价数据预测及SVR、AR、HAR对比可视化

全文链接&#xff1a;https://tecdat.cn/?p38224 分析师&#xff1a;Duqiao Han 股票市场是一个复杂的非线性系统&#xff0c;股价受到许多经济和社会因素的影响。因此&#xff0c;传统的线性或近线性预测模型很难有效、准确地预测股票指数的价格趋势。众所周知&#xff0c;深…

ubuntu20.04默认的python3.8升级到python3.10

Python 3.8 于 2019 年 10 月发布&#xff0c;距今已有五年时间。2024 年 10 月是 Python 3.8 版本发布的最后一个月&#xff0c;从 2024 年 10 月开始&#xff0c;如果存在安全错误&#xff0c;Python 开发团队将不会修复该错误。有必要把python3.8升级python3.10。 新加apt源…

数据结构 ——— 层序遍历链式二叉树

目录 链式二叉树示意图​编辑 何为层序遍历 手搓一个链式二叉树 实现层序遍历链式二叉树 链式二叉树示意图 何为层序遍历 和前中后序遍历不同&#xff0c;前中后序遍历链式二叉树需要利用递归才能遍历 而层序遍历是非递归的形式&#xff0c;如上图&#xff1a;层序遍历的…

DevOps工程技术价值流:加速业务价值流的落地实践与深度赋能

DevOps的兴起&#xff0c;得益于敏捷软件开发的普及与IT基础设施代码化管理的革新。敏捷宣言虽已解决了研发流程中的诸多挑战&#xff0c;但代码开发仅是漫长价值链的一环&#xff0c;开发前后的诸多问题仍亟待解决。与此同时&#xff0c;虚拟化和云计算技术的飞跃&#xff0c;…

python json详解

json 是 Python 中用于处理 JSON 数据的标准库。JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级的数据交换格式&#xff0c;易于人类阅读和编写&#xff0c;同时也易于机器解析和生成。Python 的 json 模块提供了将 Python 对象与 JSON 数据相互转换的功…

WPS宏编辑器开发,单元格内容变更自动触发事件

WPS中Excel的“触发器” 写在前面宏的开发1、切换宏编辑器开发环境2、小练习&#xff1a;自定义函数3、完成功能需求&#xff1a;单元格内容变更自动触发事件 总结 写在前面 我先生用EXCEL做了一张学生存款表。设计得很简单&#xff0c;A学生已存款X元&#xff0c;A学生再次存…

新版Apache Tomcat ⽬目录文件讲解(笔记)

简介&#xff1a;Tomcat⽬目录⽂文件讲解 bin &#xff08;关注&#xff09; 启动和关闭tomcat脚本 startup.sh/startup.bat (Linux平台或Mac上的启动脚本/Windows平台上的启动脚本) shutdown.sh/shutdown.bat (Linux平台或Mac上的关闭脚本/Windows平台上的关闭脚本) conf&am…

Go 语言已立足主流,编程语言排行榜24 年 11 月

Go语言概述 Go语言&#xff0c;简称Golang&#xff0c;是由Google的Robert Griesemer、Rob Pike和Ken Thompson在2007年设计&#xff0c;并于2009年11月正式宣布推出的静态类型、编译型开源编程语言。Go语言以其提高编程效率、软件构建速度和运行时性能的设计目标&#xff0c;…

Kettle配置数据源错误“Driver class ‘org.gjt.mm.mysql.Driver‘ could not be found”解决记录

问题描述 错误提示&#xff1a;“Driver class ‘org.gjt.mm.mysql.Driver’ could not be found, make sure the ‘MySQL’ driver (jar file) is installed.” 原因分析&#xff1a; 根据错误提示是缺少了相关的数据源连接jar包。 解决方案&#xff1a; 安装对应的Mysql…

PCA 原理推导

针对高维数据的降维问题&#xff0c;PCA 的基本思路如下&#xff1a;首先将需要降维的数据的各个变量标准化&#xff08;规范化&#xff09;为均值为 0&#xff0c;方差为 1 的数据集&#xff0c;然后对标准化后的数据进行正交变换&#xff0c;将原来的数据转换为若干个线性无关…

河道无人机雷达测流监测系统由哪几部分组成?

在现代水利管理中&#xff0c;河道无人机雷达监测系统正逐渐成为一种重要的工具&#xff0c;为河道的安全和管理提供了强大的技术支持。那么&#xff0c;这个先进的监测系统究竟由哪几部分组成呢&#xff1f; 河道无人机雷达监测系统工作原理 雷达传感器通过发射电磁波或激光束…

DDRPHY数字IC后端设计实现系列专题之数字后端floorplanpowerplan设计

3.2.3 特殊单元的布局 布图阶段除了布置 I/O 单元和宏单元&#xff0c;在 28nm 制程工艺时&#xff0c;还需要处理两种特 殊的物理单元&#xff0c;Endcap 和 Tapcell。 DDRPHY数字IC后端设计实现系列专题之后端设计导入&#xff0c;IO Ring设计 &#xff08;1&#xff09;拐…

实现金蝶云与MySQL的无缝数据集成

金蝶云与MySQL的费用申请单数据集成案例 金蝶云星空数据集成到MySQL的技术案例分享 在企业信息化系统中&#xff0c;数据的高效流转和准确对接是业务顺利运行的关键。本文将聚焦于一个具体的系统对接集成案例&#xff1a;如何通过轻易云数据集成平台&#xff0c;将金蝶云星空中…

Flink Source 详解

Flink Source 详解 原文 flip-27 FLIP-27 介绍了新版本Source 接口定义及架构 相比于SourceFunction&#xff0c;新版本的Source更具灵活性&#xff0c;原因是将“splits数据获取”与真“正数据获取”逻辑进行了分离 重要部件 Source 作为工厂类&#xff0c;会创建以下两…

Android Settings 单元测试 | 如何运行单元测试?

背景 在Android Settings 单元测试 | Telephony Network 模块 APN 案例中粗略介绍了单元测试逻辑内容&#xff0c;但是在独立APK里面如何将单元测试跑起来还是有疑问&#xff0c;因为APP不能直接install&#xff0c;无法借助Android Studio直接Run&#xff0c;在安装的一步会报…

【Qt聊天室】客户端实现总结

目录 1. 项目概述 2. 功能实现 2.1 主窗口设计 2.2 功能性窗口 2.3 主界面功能实现 2.4 聊天界面功能实现 2.5 个人信息功能开发 2.6 用户信息界面设置功能 2.7 单聊与群聊 2.8 登录窗口 2.9 消息功能 3. 核心设计逻辑 3.1 核心类 3.2 前后端交互与DataCenter 4…