【docker】网络模式/数据卷挂载/资源分配管理

简介: 文章目录前言一、网络1.1 概念1.2 网络模式

一、网络

1.1 概念

  • 每创建一个容器,则会在容器内部生成一个docker0作为该容器的网关
  • 虚拟网关一般是与物理网卡绑定,负责做NAT地址转换、端口映射等功能
  • 查看虚拟网卡:ifconfig,此时会看到docker0的信息

1.2 网络模式

  • 一般新创建的容器网段固定为172.16.0.0/16网段(也可以自定义)
  • 下方指定命令为两个横杠,页面原因显示不正确:- -net
模式 命令 释义
bridge –net=bridge 默认模式,每个容器都有独立网卡、IP、端口等资源
container –net=container:另外容器ID/名字 桥接模式,新容器与另外一个容器共用网卡等资源
host –net=host 桥接模式,新容器与宿主机共用网卡等资源
none –net=none 单机模式,新容器没有网络功能
自定义模式 \ 还是上面四种模式之一,不过网段可以自定义

1.3 相关命令

#查看网络列表
docker networks ls
#创建一个名字为han的网段,默认为bridge模式,docker network ls可以查看到配置的网段
docker network create --subnet=172.13.0.0/16 han
#后台启动容器指定网络模式与IP地址(需要用户先行创建该网段)
docker run -itd --name test1 --network bridge --ip 172.13.0.10 centos:7 bash
#查看容器端口映射情况
docker port 容器ID 
#新创键容器时,将容器的80端口映射到宿主机的1314端口(小p指定端口,大P随机端口
docker run -itd -p 1314:80 nginx:lnmp bash

二、数据

2.1 文件传输

#将宿主机文件拷贝到容器对应位置(只能复制,无法自动解压)
docker cp 宿主机文件 容器ID:路径

2.2 数据卷挂载

  • 将容器的数据保存在宿主机或其他的位置,提高数据的安全性
#创建数据卷,并将宿主机的磁盘挂载到容器中(宿主机借给容器)
docker run -it --name test1 -v 宿主机路径:容器路径 cento:7 bash
#创建一个test1的容器,并建立两个数据卷目录
docker run -it --name test1 -v /data1 -v /data2 centos:7 bash
#创建一个test2容器,并将test1的所有数据卷都挂载到本地容器
docker run -it --name test2 --volumes-from test1 centos:7 bash
#将数据卷容器挂载到一个容器
docker run -itd --volumes-from 数据卷容器 --name 本地容器 centos:7 bash

三、资源分配管理

3.1 概念/功能

  • 每个容器都相当于一个进程
  • docker利用cgroup进行资源控制
  • 是容器隔离6个命名空间的手段

3.2 cgroup四大功能

  • 资源限制
  • 资源统计
  • 任务控制
  • 优先级分级

3.3 资源控制

3.3.1 CPU配置

#概念
cpu周期:一般1s为一个周期
利用率:在一个周期内运行的时间
cpu分配:一个周期内允许容器最大运行的时间
#命令
#设置调度周期(1ms-1s)
--cpu-period 调度周期
#设置有效范围(1000-100w微秒)
--cpu-quota 有效时间
#容器比例分配(权重是与另外一个容器对比)
--cpu-shares 权重
#容器绑定内核
--cpuset-cpus 第几个内核
#动态监控资源使用情况
docker stats

3.3.2 内存配置

#限制最大使用的内存数
--m
#限制交换分区大小(至少是内存两倍,因为要减去内存的大小,才是交换分区真实的大小)
--memory-swap

3.3.3 读写限制

#设置优先级权重(默认为500)
--blkio-weight 权重
#bps:每秒读写的数据路
#限制某个容器读的bps
--device-read-bps 磁盘:数字
#限制某个容器写的bps
--device-write-bps 磁盘:数字
#iops:每秒I/O的次数
#限制某个容器读的iops
--device-read-iops  磁盘:数字
#限制某个容器写的iops
--device-write-iops  磁盘:数字
例:docker run -it --device-write-bps /dev/sda:5MB centos:7

3.4 镜像大小

  • 原理:镜像是一层一层的,层数越少,镜像越轻量级

四、思维导图

相关文章
|
9月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
635 0
|
10月前
|
机器学习/深度学习 数据采集 传感器
【故障诊断】基于matlab BP神经网络电机数据特征提取与故障诊断研究(Matlab代码实现)
【故障诊断】基于matlab BP神经网络电机数据特征提取与故障诊断研究(Matlab代码实现)
300 0
|
11月前
|
数据采集 存储 算法
MyEMS 开源能源管理系统:基于 4G 无线传感网络的能源数据闭环管理方案
MyEMS 是开源能源管理领域的标杆解决方案,采用 Python、Django 与 React 技术栈,具备模块化架构与跨平台兼容性。系统涵盖能源数据治理、设备管理、工单流转与智能控制四大核心功能,结合高精度 4G 无线计量仪表,实现高效数据采集与边缘计算。方案部署灵活、安全性高,助力企业实现能源数字化与碳减排目标。
392 0
|
12月前
|
Python
LBA-ECO CD-32 通量塔网络数据汇编,巴西亚马逊:1999-2006,V2
该数据集汇集了1999年至2006年间巴西亚马逊地区九座观测塔的碳和能量通量、气象、辐射等多类数据,涵盖小时至月度时间步长。作为第二版汇编,数据经过协调与质量控制,扩展了第一版内容,并新增生态系统呼吸等相关计算数据,支持综合研究与模型合成。数据以36个制表符分隔文本文件形式提供,配套PDF说明文件,适用于生态与气候研究。引用来源为Restrepo-Coupe等人(2021)。
493 1
|
8月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
871 6
|
8月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
325 0
|
Prometheus 监控 Cloud Native
除了Prometheus,还有哪些工具可以监控Docker Swarm集群的资源使用情况?
除了Prometheus,还有哪些工具可以监控Docker Swarm集群的资源使用情况?
959 79
|
Docker 容器
Docker网关冲突导致容器启动网络异常解决方案
当执行`docker-compose up`命令时,服务器网络可能因Docker创建新网桥导致IP段冲突而中断。原因是Docker默认的docker0网卡(172.17.0.1/16)与宿主机网络地址段重叠,引发路由异常。解决方法为修改docker0地址段,通过配置`/etc/docker/daemon.json`调整为非冲突段(如192.168.200.1/24),并重启服务。同时,在`docker-compose.yml`中指定网络模式为`bridge`,最后通过检查docker0地址、网络接口列表及测试容器启动验证修复效果。
1798 39
|
9月前
|
机器学习/深度学习 数据采集 运维
改进的遗传算法优化的BP神经网络用于电厂数据的异常检测和故障诊断
改进的遗传算法优化的BP神经网络用于电厂数据的异常检测和故障诊断
|
11月前
|
存储 监控 算法
基于 Python 跳表算法的局域网网络监控软件动态数据索引优化策略研究
局域网网络监控软件需高效处理终端行为数据,跳表作为一种基于概率平衡的动态数据结构,具备高效的插入、删除与查询性能(平均时间复杂度为O(log n)),适用于高频数据写入和随机查询场景。本文深入解析跳表原理,探讨其在局域网监控中的适配性,并提供基于Python的完整实现方案,优化终端会话管理,提升系统响应性能。
280 4

热门文章

最新文章