扩容容器
默认来说,如果你使用 Device Mapper 的存储插件,所有的镜像和容器是从一个初始 10G 的文件系统中创建的。让我们来看看如何从一个更大的文件系统中创建一个容器。
首先,我们用 Ubuntu 的镜像来创建我们的容器。我们不需要在这个容器里运行任何东西,只需要这个文件(或者关联的文件系统)存在。为了演示,我们会在这个容器里运行 df ,来看一下根文件系统的大小。
$ docker run -d ubuntu df -h / 4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603
由于需要修改 Device Mapper 管理中的一些卷的信息,我们现在用 root 的身份来运行一些命令。所有以#开头的命令都必须以 root 身份来执行。只要能访问 Docker 的 Socket 服务,你也可以用普通用户的身份来执行其他的命令(以$开头)。
让我们看一下 /dev/mapper
,那里应该有一个对应容器文件系统的符号链接,以 docker-X:Y-Z- 开头:
# ls -l /dev/mapper/docker-*-4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603 lrwxrwxrwx 1 root root 7 Jan 31 21:04 /dev/mapper/docker-0:37-1471009-4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603 -> ../dm-8
注意记住那个全名,我们未来会用到。
开始扩容:
1、首先让我们来看一下当前卷的信息表:
# dmsetup table docker-0:37-1471009-4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603 0 20971520 thin 254:0 7
第二个数字是设备的大小,表示有多少个 512-bytes 的扇区. 这个值略高于 10GB 的大小。
2、我们来计算一下一个 42GB 的卷需要多少扇区,
$ echo $((42*1024*1024*1024/512)) 88080384
精简快照目标的一个神奇的特点是它不会限制卷的大小。当你创建它的时候,一个精简的卷使用0个块,当你开始往块里面写入的时候,它们会从共用的块池中进行分配。你可以写0个块,或者是10亿个块,这个和精简快照目标没关系。文件系统的大小只和 Device Mapper 表有关系。
觉得困惑?不要担心。我们只是需要装载一个新的表,这个完全和之前的是一样的,但是有更多的扇区。仅此而已。
3、旧表是 0 20971520 thin 254:0 7 。我们会改变第二个数字,要非常小心保持其他的值不变。你的卷可能不是 7 ,所以要使用正确的值!
这样操作:
复制代码 代码如下:
# echo 0 88080384 thin 254:0 7 | dmsetup load docker-0:37-1471009-4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603
4、现在如果我们再次检查表的信息,步骤和前面一样。首先使用下面的命令激活新表:
复制代码 代码如下:
# dmsetup resume docker-0:37-1471009-4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603
执行完命令后,再次检查一下表的信息,发现它会使用新的扇区数量。
5、我们已经调整了块设备的大小,但是我们仍然需要调整文件系统的大小,我们使用 xfs_growfs 来操作:
(网上很多说到的resize2fs后来看到xfs方式的使用dumpe2fs,该命令在16.04下可能出现文件正在使用或者找不到超级块的错误,)
复制代码 代码如下:
# xfs_growfs docker-0:37-1471009-4ab0bdde0a0dd663d35993e401055ee0a66c63892ba960680b3386938bda3603
docker动态容器扩容成功。
6、停止该容器后,无法重新启动
当容器扩容之后,由于dm认为设备块大小仍然为之前设置的初始大小,所以会发生无法起启动的情况,这时只要重新操作即可。
$ docker start test#必须要先启动一下,让其生成dm文件才能修改 #此时会报错,不要理会,执行以下操作即可 $ echo 0 41943040 thin 252:0 9 | dmsetup load docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69 $ dmsetup resume docker-253:1-131179-a835d492b6864a13eb11eddd17c3cabf5226f20bc01fbfe90964d80112a0df69
这是一bug
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。
更新日志
- 英雄联盟六个龙魂是哪六个 英雄联盟六个龙魂介绍一览
- 《忆蚀》Subliminal:揭秘后室之谜,路知行献声Weplay文化展
- 初始之部制作人气漫画改编游戏《我家大师兄脑子有坑》参展2024WePlay
- 《异环》「奇点测试」定档11.28 超自然都市轻喜剧即将放送!
- 16层乐队.2024-大快朵颐【摩登天空】【FLAC分轨】
- 群星.1988-电视金曲巡礼【EMI百代】【WAV+CUE】
- 群星.1992-电视金曲巡礼VOL.2【EMI百代】【WAV+CUE】
- 廖昌永《情缘HQ》头版限量[低速原抓WAV+CUE]
- 蔡琴《老歌》头版限量编号MQA-24K金碟[低速原抓WAV+CUE]
- 李嘉《国语转调》3CD[WAV+CUE]
- 谭咏麟《爱的根源 MQA-UHQCD》2022头版限量编号 [WAV+CUE][1G]
- 江洋 《江洋原创琵琶作品专辑》[320K/MP3][118.08MB]
- 江洋 《江洋原创琵琶作品专辑》[FLAC/分轨][228.33MB]
- 《战舰世界》语音包文件夹位置介绍
- 《CSGO》送好友皮肤方法介绍