一、容器啟動 默認存儲大小:
1、一種在啟動項 docker.service 中配置、
2、在啟動項配置調用的 docker-storage 配置文件中配置;
二、Docker 容器默認啟動文件:
/usr/lib/systemd/system/docker.service
# cat /usr/lib/systemd/system/docker.service
[Unit] Description=Docker Application Container Engine Documentation=http://docs.docker.com After=network.target Wants=docker-storage-setup.service Requires=docker-cleanup.timer [Service] Type=notify NotifyAccess=all EnvironmentFile=-/run/containers/registries.conf EnvironmentFile=-/etc/sysconfig/docker EnvironmentFile=-/etc/sysconfig/docker-storage EnvironmentFile=-/etc/sysconfig/docker-network Environment=GOTRACEBACK=crash Environment=DOCKER_HTTP_HOST_COMPAT=1 Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin ExecStart=/usr/bin/dockerd-current \ --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \ --default-runtime=docker-runc \ --exec-opt native.cgroupdriver=systemd \ --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \ $OPTIONS \ $DOCKER_STORAGE_OPTIONS \ $DOCKER_NETWORK_OPTIONS \ $ADD_REGISTRY \ $BLOCK_REGISTRY \ $INSECURE_REGISTRY\ $REGISTRIES ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=1048576 LimitNPROC=1048576 LimitCORE=infinity TimeoutStartSec=0 Restart=on-abnormal MountFlags=slave KillMode=process [Install] WantedBy=multi-user.target
更改 容器啟動 空間大小;
[Service]
... ExecStart=/usr/bin/dockerd --storage-driver devicemapper --storage-opt dm.loopdatasize=100G --storage-opt dm.loopmetadatasize=10G --storage-opt dm.fs=ext4 --storage-opt dm.basesize=30G ...
DOCKER最大空間為100G,容器最大空間為30G
重新加載配置啟動文件;
systemctl daemon-reload
重啟 docker
service docker restart
三、另一種 方式:
查看 環境文件 EnvironmentFile 可以看到 docker 默認啟動配置項:
/etc/sysconfig/docker-storage
# cat /etc/sysconfig/docker-storage |grep -v ^$ | grep -v ^#
DOCKER_STORAGE_OPTIONS=
更改默認存儲大小
# cat /etc/sysconfig/docker-storage
DOCKER_STORAGE_OPTIONS="--storage-opt dm.loopdatasize=100G -storage-opt dm.loopmetadatasize=10G --storage-opt dm.fs=ext4 --storage-opt dm.basesize=20G" 參數: dm.loopdatasize=2000G # 是指存放數據的數據庫空間為100G,默認是20g dm.loopmetadatasize=10G # 是存放Metadata數據空間為10g,默認是2g dm.fs=ext4 # 是指容器磁盤分區為ext4 dm.basesize=20G # 是指容器根分區默認為20g,默認是10g
新版本dm字段: DOCKER_STORAGE_OPTIONS="--storage-driver devicemapper --storage-opt dm.loopdatasize=2000G --storage-opt dm.loopmetadatasize=10G --storage-opt dm.fs=ext4 --storage-opt dm.basesize=20G"
Docker 默認 存儲目錄 /etc/sysconfig/docker-storage
而實際 執行文件是 docker-storage-setup
Docker 容器配置目錄 /etc/sysconfig/docker-storage ; 默認是不建議更改的; 限制性的默認值,最大的存儲空間 100G 。 容器啟動時的存儲驅動文件: /usr/share/container-storage-setup/container-storage-setup