【问题标题】:Increase Docker container storage size on CentOS在 CentOS 上增加 Docker 容器存储大小
【发布时间】:2020-04-23 22:18:09
【问题描述】:

我想增加 Docker 容器的磁盘空间。这是 docker info 的输出。

Containers: 3
Running: 3
Paused: 0
Stopped: 0
Images: 4
Server Version: 19.03.5
Storage Driver: overlay2
Backing Filesystem: extfs 
Supports d_type: true
Native Overlay Diff: true

我读到磁盘空间默认为 10GB,据说这个限制被overlay2 删除了。对我来说似乎不是这种情况。

docker run -d --name jd2 --restart always  -v $HOME/docker/volumes/jd2:/opt/JDownloader/cfg -v $HOME/downloads:/opt/JDownloader/Downloads plusminus/jdownloader2-headless

【问题讨论】:

  • 您好,是否有任何步骤可以重现您的用例以了解确切要求。

标签: docker centos


【解决方案1】:

我已经读到磁盘空间默认为 10GB,据说这个限制是通过 overlay2 删除的。对我来说似乎不是这种情况。

这不准确。

Docker 的早期版本在 CentOS 上使用 devicemapper 存储驱动程序,它为每个容器创建一个新的虚拟块设备。在这种情况下,每个容器的默认大小为 10GB,并且可以通过 dm.basesize 存储选项进行控制。

由于内核更新和额外的开发工作,CentOS 和大多数其他发行版上的默认存储驱动程序是overlay2 存储驱动程序。这不再依赖于每个容器的块设备,而是使用overlayfs。这样做的实际影响之一是不再有每个容器的存储限制:所有容器都可以访问/var/lib/docker 下的所有空间。不再有任何类型的每个容器 10GB 的限制。

有关the overlay2 storage driver 的更多信息,请参阅文档。

如果/var/lib/docker 中的空间不足,您可以像添加任何其他文件系统一样添加空间。

【讨论】:

    【解决方案2】:

    请按照以下步骤增加 docker 容器的默认大小 -

    #Modify the docker config in /etc/sysconfig/docker-storage to add the line:
    DOCKER_STORAGE_OPTIONS= - -storage-opt dm.basesize=20G
    
    # Stop the docker service
    service docker stop
    
    rm /var/lib/docker 
    #NOTE THIS DELETES ALL IMAGES , SO MAKE A BACKUP
    
    # Restart the docker service 
    service docker start
    
    docker load < [each_save_in_backup.tar]
    docker run -i -t [imagename] /bin/bash
    
    In the bash prompt of the docker container “df -k” should show 20GB / file system 
    size now.
    

    如果这没有帮助,请告诉我。

    【讨论】:

    • dm.basesize 存储选项用于使用devicemapper 存储驱动程序,但 OP 显然使用的是overlay2 驱动程序。
    • 感谢您帮助我。我忘了看看这一点。
    • @YashKamdar 如果你为@987654325 返工@ larsks 可能会删除反对票
    猜你喜欢
    • 2021-05-15
    • 1970-01-01
    • 2017-08-31
    • 1970-01-01
    • 1970-01-01
    • 2020-03-05
    • 1970-01-01
    • 1970-01-01
    • 2021-01-10
    相关资源
    最近更新 更多