繁体   English   中英

你如何解决Docker for Mac中Docker.qcow2的大小限制?

[英]How do you get around the size limitation of Docker.qcow2 in the Docker for Mac?

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

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

我对将主机目录作为卷挂载犹豫不决,因为挂载的主机目录卷中的文件访问速度比常规卷慢得多。

这些是一些有用的链接,可以更详细地讨论这些问题:

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

你们都吃速度损失并挂载主机目录吗? 你手动创建一个qcow文件,可以用qemu增大(如果这样做,你需要在升级之间维护这个文件)吗? 你还有别的办法处理这个问题吗?

以下脚本删除并重新创建一个新的缩小的Docker.qcow2文件,保留作为参数传递的图像。

https://blog.mrtrustor.net/post/clean-docker-for-mac/

希望这可以帮助。

对于这种情况,我肯定会建议创建一个可以变大的qcow图像。

这是一个相对简单的过程,您可以获得运行大型数据库时通常非常必要的性能优势。

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

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

关于Docker for 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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM