Docker 扩容:

提前规划 :
一是从宿主机 配置磁盘格式 LVM 宿主机可以动态扩展;
二是 在容器上的扩容;默认是 100G 。然后创建容器时候 挂载目录 或者直接池扩展;

默认 Docker 安装位置;

/var/lib/docker 

docker 默认容器目录;

/var/lib/docker/containers/

# docker info  

查看默认配置信息;

# docker info
...
Server Version: 1.12.   # 服务器版本:1.12.
Storage Driver: devicemapper # 存储驱动程序:devicemapper
Pool Name: docker-:--pool # 池名称:docker-:--pool
Pool Blocksize: 65.54 kB   # Pool Blocksize:65.54 kB
Base Device Size: 107.4 GB # 基本设备大小:107.4 GB
Backing Filesystem: ext4   # 支持文件系统:ext4
Data file: /dev/loop0   # 数据文件:/ dev / loop0
Metadata file: /dev/loop1 # 元数据文件:/ dev / loop1
Data Space Used: 5.352 GB # 使用的数据空间:5.352 GB
Data Space Total: 107.4 GB # 数据空间总计:107.4 GB
Data Space Available: 10.04 GB # 可用数据空间:10.04 GB
Metadata Space Used: 7.229 MB # 使用的元数据空间:7.229 MB
Metadata Space Total: 2.147 GB # 元数据空间总计:2.147 GB
Metadata Space Available: 2.14 GB # 可用元数据空间:2.14 GB
Thin Pool Minimum Free Space: 10.74 GB # 精简池最小可用空间:10.74 GB
Udev Sync Supported: true   # Udev Sync支持:true
Deferred Removal Enabled: true   # 延迟删除已启用:true
Deferred Deletion Enabled: true   # 延迟删除已启用:true
Deferred Deleted Device Count:   # 延迟删除的设备数:
Data loop file: /var/lib/docker/devicemapper/devicemapper/data # 数据循环文件:/ var / lib / docker / devicemapper / devicemapper / data
WARNING: Usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device. # 警告:强烈建议不要使用环回设备进行生产。使用`--storage-opt dm.thinpooldev`指定自定义块存储设备。
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata # 元数据循环文件:/ var / lib / docker / devicemapper / devicemapper / metadata
Library Version: 1.02.-RHEL7 (--) 版本:1.02.-RHEL7(--)
Logging Driver: journald # 日志驱动程序:journald
Cgroup Driver: systemd # Cgroup驱动程序:systemd
Plugins:   # 插件:
Volume: local # 存储卷:本地
Network: bridge host null overlay # 网络:桥接主机空覆盖
Swarm: inactive # Swarm:不活跃
Runtimes: docker-runc runc # 运行时:docker-runc runc
Default Runtime: docker-runc # 默认运行时:docker-runc
Security Options: seccomp # 安全选项:seccomp
Kernel Version: 3.10.-.el7.x86_64 # 内核版本:3.10.-.el7.x86_64
Operating System: CentOS Linux (Core) # 操作系统:CentOS Linux (核心)
OSType: linux # 系统类别:linux
...

所以在 docker1.12 以上版本默认提供了两种方式:

一是在 docker 启动时候 加载参数--storage-opt dm.basesize=100G 用来调整默认容器的rootfs大小;
二是在创建容器的时候使用参数--storage-opt size=70G来设置改容器的rootfs大小。 类似 :
--storage-opt dm.basesize=30G

# 查询 容器大小;

1、可以进入到容器查看;
# du -sh
2、也可以远程执行查看:
# docker exec -it d517c9a9cbd3b106ac9912f1fb5f0453a1dd1055f4a1b77d6ba52fa7205ea705 df -h

查看容器卷的 信息;

NAMES 容器 必须是运行UP状态;

# docker inspect -f '{{ .GraphDriver.Data.DeviceName }}' NAMES

查看容器卷的大小;
# docker inspect -f '{{ .GraphDriver.Data.DeviceName }}' centos2
docker-8:3-2097465-662957949c3d3c51f679c1200d2bf94446fa1096e386546e8623a9fe210ab2c7

容器存储卷信息;

# dmsetup table

容器分区格式一定是  ext4
容器引擎一定要是  devicemapper

计算 容器大小命令;

示例 : 30G
计数公式为:***/ 或者:
echo $((***/))

Docker 容器默认存储卷目录:

/dev/mapper

修改容器大小:

扩容更改扇区大小:
echo thin : | dmsetup load docker-:--662957949c3d3c51f679c1200d2bf94446fa1096e386546e8623a9fe210ab2c7
dmsetup resume docker-:--662957949c3d3c51f679c1200d2bf94446fa1096e386546e8623a9fe210ab2c7

启动容器 格式化添加池;
docker start centos2 重新定义大小:
resize2fs /dev/mapper/docker-:--662957949c3d3c51f679c1200d2bf94446fa1096e386546e8623a9fe210ab2c7

xfs_growfs /dev/mapper/docker-:--662957949c3d3c51f679c1200d2bf94446fa1096e386546e8623a9fe210ab2c7


resize2fs ext2/ext3/ext4 文件格式
xfs_growfs xfs 文件格式

Docker 扩容 容器空间大小 - 九的更多相关文章

  1. 【转载】docker 应用之动态扩展容器空间大小

    docker 容器默认的空间是 10G, 如果想指定默认容器的大小(在启动容器的时候指定),可以在 docker 配置文件里通过 dm.basesize 参数指定,比如 docker -d --sto ...

  2. docker限制容器日志大小

    1.新建/etc/docker/daemon.json,若有就不用新建了.添加log-dirver和log-opts参数,样例如下: # vim /etc/docker/daemon.json { & ...

  3. [Linux] -Docker修改空间大小

    Docker默认空间大小分为两个,一个是池空间大小,另一个是容器空间大小. 池空间大小默认为:100G 容器空间大小默认为是:10G 所以修改空间大小也分为两个: 这里使用centos下的yum进行安 ...

  4. 使用 Device Mapper来改变Docker容器的大小

    作者:Jérôme Petazzoni ( Docker 布道师) 译者:Mark Shao ( EMC 中国高级工程师) 如果在 CentOS . REHL . Fedor 或者其他默认没有 AUF ...

  5. Docker 空间大小设置 - 十

    一.容器启动 默认存储大小: 1.一种在启动项 docker.service 中配置. 2.在启动项配置调用的 docker-storage 配置文件中配置: 二.Docker 容器默认启动文件: / ...

  6. Docker(十九)-Docker监控容器资源的占用情况

    启动一个容器并限制资源 启动一个centos容器,限制其内存为1G ,可用cpu数为2 [root@localhost ~]# docker run --name os1 -it -m 1g --cp ...

  7. Docker Kubernetes 容器扩容与缩容

    Docker Kubernetes 容器扩容与缩容 环境: 系统:Centos 7.4 x64 Docker版本:18.09.0 Kubernetes版本:v1.8 管理节点:192.168.1.79 ...

  8. Docker与容器快速入门

    Docker之风席卷全球,但很多人觉得docker入门确实不太容易,其原因在于很多知识点上没准备好,在docker解决了什么问题.怎么解决的.用什么技术解决的都还没想清楚的时候就去探索docker组件 ...

  9. DB2如何调整表空间大小

    DB2如何调整表空间大小 刚刚接到客户那边打的电话,程序一直报错,所有的业务都做不了,拷贝了一份应用服务器(weblogic)的日志,日志里显示: WARN : 2009-06-18 16:24:32 ...

随机推荐

  1. Anaconda换源小记

    如果还没有安装可以参考:https://www.cnblogs.com/dotnetcrazy/p/9158715.html 一键更新所有库:conda update --all 清华的源有时候有点小 ...

  2. javascript之复习(框架里的方法们)

    继上次整理,一些东西没有整理完.就写在这.可能比较乱比较杂,因为都是整理的一些东西,也没有到做成专题的程度. 1.String.repeat() 大家要实现重复一个字符串的重复怎么写呢,反正我的第一想 ...

  3. 【css技能提升】完美的 Sticky Footer 布局

    在总结之前所做的项目时,遇到过下面这种情况. 在主体内容不足够多或者未完全加载出来之前,就会导致出现左边的这种情况,原因是因为没有足够的垂直空间使得页脚推到浏览器窗口最底部.但是,我们期望的效果是页脚 ...

  4. 在Java中调用与系统有关的剪切板Clipboard

    java从1.5版开始已经能与系统的剪切板很好的交互了. 如果可以在程序中直接调用系统的剪切板来保存“复制”的对象内容,那可以说的比之前的想法好很多. 下面是一个对java.io.File对象进行co ...

  5. 第三十五篇-AppBarLayout的使用

    效果图: 添加appbarlayout到xml文件中,然后在toolbar下面添加一个imageview并设置居中放置,我放置的是上面那个安卓的图标. 根据之前学过的toolbar那一节,结合view ...

  6. JS事件(二)事件对象

    html事件处理程序中,变量event中保存着事件对象 <button onclick="alert(ev.type)" id="btn">clic ...

  7. Http如何利用304让浏览器去更新数据

    ETag 是 Entity Tag 的缩写,中文译过来就是实体标签的意思.在HTTP1.1协议中其实就是请求HEAD中的一个属性而已. HTTP/1.1 200 OK Date: Mon, 23 Ma ...

  8. CentOS 6.x 最小化安装推荐安装的依赖包和修改内核参数

    CentOS 6.x 最小化安装推荐安装的依赖包 我在日常工作中,新建的xenserver的虚拟机,CentOS release 6.9 (Final)操作系统,采用最小化安装,后续很多操作需要各种依 ...

  9. bzoj1003 最短路+dp

    遇到小范围数据的题目就容易被限制了思维,我单知道数据小可以跑很多遍最短路,但我没想到暴力跑N ^ 2的最短路也能过 物流公司要把一批货物从码头A运到码头B.由于货物量比较大,需要n天才能运完.货物运输 ...

  10. Pandas透视表(pivot_table)详解

    介绍 也许大多数人都有在Excel中使用数据透视表的经历,其实Pandas也提供了一个类似的功能,名为pivot_table.虽然pivot_table非常有用,但是我发现为了格式化输出我所需要的内容 ...