docker容器资源配额控制之内存-io-数据映射

  • 当容器中服务或命令运行结束后,自动删除容器

作用:当容器命令运行结束后,自动删除容器。
应用场景:在某些环境下,可能需要大量的新建docker虚拟机,然后仅仅运行几秒钟,然后就彻底删除。如运行单元测试等,测试弹性云计算,需要创建1万虚拟机,运行1小时,模拟双11的压力,1小时后自动删除。

[root@apenglinux-002 ~]# docker run -it --rm --name apeng centos sleep 5
[root@apenglinux-002 stree]# docker ps |grep apeng
128ed0e6c829        centos              "sleep 5"           3 seconds ago       Up 2 seconds                            apeng
[root@apenglinux-002 stree]# docker ps |grep apeng  //等5s后,再查看自动删除了
  • docker提供参数-m --memory=“” 限制容器的内存使用量

允许容器使用的内存上限制为128M

[root@apenglinux-002 stree]# docker run -itd -m 128m centos
ca0c1a9e3c83a66b8b13038f6e50c46f399ac5f3e2e73ae01bb313b17598541d
[root@apenglinux-002 stree]# cat /sys/fs/cgroup/memory/docker/ca0c1a9e3c83a66b8b13038f6e50c46f399ac5f3e2e73ae01bb313b17598541d/memory.limit_in_bytes 
134217728
  • 限制硬盘读写速度IO

docker容器资源配额控制之内存-io-数据映射
限制此设备上的写速度(bytes per second),单位可以是kb,mb,gb

情景:防止某个docker容器吃光磁盘 I/O 资源

设置容器硬盘的最高读取速度设定为 1MB/s

[root@apenglinux-002 ~]# docker run -it --name disk1 --device-write-bps /dev/sda:1mb centos /bin/bash

docker容器资源配额控制之内存-io-数据映射_第1张图片

  • docker 数据映射
# docker run -itd -v /src/:/dst/ centos bash
// -v 用来指定挂载目录
// /src/为本地目录
// /dst/为容器里的目录