Docker在啓動容器的時候,需要創建文件系統,爲rootfs提供掛載點。最初Docker僅能在支持Aufs文件系統的Linux發行版上運行,但是由於Aufs未能加入Linux內核,爲了尋求兼容性、擴展性,Docker在內部通過graphdriver機制這種可擴展的方式來實現對不同文件系統的支持。
目前,Docker支持Aufs,Devicemapper,Btrfs和Vfs四種文件系統,docker容器默認的空間是10G,如果想指定默認容器的大小(在啓動容器的時候指定),可以有如下兩種方法:
建議大家在CentOS7.x上部署Docker進行測試(內核在3.10+)
1)第一種方法:
可以在docker配置文件裏通過dm.basesize參數指定,例如:
docker -d --storage-optdm.basesize=40G
(注意*在CentOS 6.5上有可能執行該命令擴容不成功)
以上方法只適用於新容器生成,並且修改後需要重啓docker,無法做到動態給正在運行容器指定大小。(如下圖爲默認容器大小)
在文件加入如下語句即可:vi /etc/sysconfig/docker-storage
然後重啓docker即可;
然後重新創建即可。
2)第二種方法:
(注意*如果是centos6.x系列,內核不穩定,會導致docker容器停止,無法再啓動)
1)查看原容器的磁盤空間大小
2)查看mapper設備:
3) 查看卷信息表:
4) 根據要擴展的大小,計算需要多少扇區:
第二個數字是設備的大小,表示有多少個512-bytes 的扇區. 這個值略高於 10GB 的大小。我們來計算一下一個 15GB 的卷需要多少扇區,
$ echo $((15*1024*1024*1024/512))31457280
5) 修改卷信息表--激活--並且驗證(紅色3個部分)
6) 修改文件系統大小
7) 最後驗證磁盤空間大小