每个Docker容器都将配置10 GB磁盘空间,这是CentOS中devicemapper的默认配置。那么如何配置默认情况下新创建的磁盘空间超过10 GB的每个容器呢? (主机服务器随CentOS 6和Docker 1.7.1一起安装)
答案 0 :(得分:7)
是的,你可以。启动Docker守护程序时使用dm.basesize
属性。例如:
docker daemon --storage-opt dm.basesize=50G ...
可以在the official docs找到更多信息。
答案 1 :(得分:4)
(可选)如果您已经通过docker pull
下载了任何图片,则需要先清除它们 - 否则它们将不会调整大小
docker rmi your_image_name
编辑存储配置
vi /etc/sysconfig/docker-storage
应该有DOCKER_STORAGE_OPTIONS="..."
之类的内容,将其更改为DOCKER_STORAGE_OPTIONS="... --storage-opt dm.basesize=100G"
重启docker deamon
service docker restart
拉动图片
docker pull your_image_name
(可选)验证
docker run -i -t your_image_name /bin/bash
df -h
我一直在努力解决这个问题,直到找到这个链接http://www.projectatomic.io/blog/2016/03/daemon_option_basedevicesize/ 事实证明,你必须在放大基础后移除/拉出图像。
答案 2 :(得分:2)
对于使用Mac的用户,这是一个更简单的解决方案: 从状态栏中的Docker图标中单击“首选项”:
然后导航至“磁盘”选项卡,使用滑块调整磁盘映像大小。 Docker将需要一些时间来重新启动。
就是这样。
答案 3 :(得分:0)
正确回答以上建议我们必须编辑devicemapper的 dm.basesize 属性, 但是建议的解决方案已过时或根本无法解决我的情况。
首先请确保您的存储驱动器是具有以下内容的设备映射器:
docker info | grep "Storage Driver"
您还可以通过以下方式检查容器的当前最大尺寸:(默认10 gb)
docker info | grep "Base Device Size"
1)在 etc / docker / daemon.json 文件中编辑dm.basesize,或者如果不存在则创建新的文件。
{
"storage-opts": [
"dm.basesize=30G"
]
}
2)重新启动docker deamon
sudo systemctl stop docker
sudo systemctl start docker
3)在下面运行再次命令以检查大小是否已更改
docker info | grep "Base Device Size"
4)更新当前图像以应用更改很重要