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. docker file 示例

    报错 Cannot connect to the Docker daemon. Is the docker daemon running on this host? 这个错误只要输入docker -d ...

  2. bzoj1218 激光炸弹

    bz上难得一见的水题啊. 我们发现:这个SB居然只要枚举就行了!!! 我TM...... /****************************************************** ...

  3. poj2083 Fractal

    我一开始的想法是间断性的输出空格和solve(k-1) 但是发现问题很大. 雨菲:可以用一个数组保存啊 我:那不爆了? 雨菲:不会爆. 我一算:729 × 729,还真没爆. 然后就直接WA了.... ...

  4. 洛谷P4390 Mokia CDQ分治

    喜闻乐见的CDQ分治被我搞的又WA又T..... 大致思路是这样的:把询问用二维前缀和的思想拆成4个子询问.然后施CDQ大法即可. 我却灵光一闪:树状数组是可以求区间和的,那么我们只拆成两个子询问不就 ...

  5. Day037--Python--线程的其他方法,GIL, 线程事件,队列,线程池,协程

    1. 线程的一些其他方法 threading.current_thread()  # 线程对象 threading.current_thread().getName()  # 线程名称 threadi ...

  6. SpringBoot文件上传

    先建工程 只勾选web和freemarker模板 最后 先看一下最终目录结构 先修改pom文件,加入common-io依赖 然后修改Application.yml文件 spring: freemark ...

  7. C++基础知识--DAY2

    昨天我们主要是讲的C++相对于C语言的变化,结尾讲述了一点引用的基础知识,要明白,引用就是对一个变量取别名,在C++中需要用指针的都可以思考是否可以用引用来代替. 1. 常引用 常引用(const s ...

  8. c#UDP协议

    UDP协议是不可靠的协议,传输速率快 服务器端: using System; using System.Collections.Generic; using System.Linq; using Sy ...

  9. PHP的简单工厂模式

    又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式.在简单工厂模式中,可以根据参数的不同返回不同类的实例.简单工厂模式专门定义一个类来负责创建其他类的实例,被创建 ...

  10. 我的winows server 2012 突然多了个piress的帐户,后来一查原来是mysql漏洞的问题,郁闷

    今天打开远程连接到windows server 2012,服务器上装的360竟然提示有木马.吓了一跳.再检查计算机账户,多了个piress账户.把这个账户在百度一搜索,原来还有其它人中招. 后来发现网 ...