一尘不染

在Mac版Docker中,如何解决Docker.qcow2的大小限制?

docker

我有一个大型(100gb +)数据库,正在尝试使用官方的postgres
image
运行。

我无法将数据存储~/Library/Containers/com.docker.docker/Data/com.docker.driver.amd64-linux/Docker.qcow2在Docker
卷中,因为Docker for Mac中的文件大小限制约为60gb。

我不愿意将主机目录挂载为卷,因为已挂载的主机目录卷中的文件访问比常规卷慢得多。

这些是一些有用的链接,这些链接对这些问题进行了更详细的介绍:

  • 讨论了Docker.qcow2文件的大小限制
  • 也讨论了Docker.qcow2文件的大小限制
  • 讨论挂载的主机目录卷速度问题
  • 很好地描述了如何用一个可以变大的文件替换Docker.qcow2文件。
  • 讨论了Docker.qcow2文件在删除内容时如何不收缩(这没有直接关系,但是会使问题进一步复杂化)

你们都吃掉速度损失并挂载主机目录了吗?您是否手动创建了可以随qemu增大而增大的qcow2文件(如果执行此操作,是否需要在两次升级之间维护该文件)?您是否还采取其他措施来解决此问题?


阅读 550

收藏
2020-06-17

共1个答案

一尘不染

Docker for Mac 18.06从qcow2文件格式切换为原始文件格式,从而提高了速度和磁盘使用率。核心问题仍然存在,因为Docker有限的空间可用于所有数据。但是,您现在可以在首选项->磁盘->磁盘映像大小中设置该限制。

Docker for Mac版本17.12是第一个引入原始文件格式的版本,但是初始版本中存在一些错误,导致他们暂时将其作为功能部件删除。您可以在该页面上搜索“原始”,以回顾该功能的历史记录。

有一个伟大的音符这里大约泊坞窗为Mac如何报告它的磁盘使用情况…

这将显示逻辑大小:

ls -alh ~/Library/Containers/com.docker.docker/Data/vms/0/Docker.raw

虽然这将显示物理尺寸:

du -h ~/Library/Containers/com.docker.docker/Data/vms/0/Docker.raw

2020-06-17