请教一下大家关于 docker 网卡、带宽限制的问题

152 天前
 Aurorataro

大家好,我是 docker 初学者,遇到了以下情况,请教一下大家,集思广益

需求

现在有个容器,我需要限制它的上下行带宽

现状

  1. 使用 Wondershaper 来限制内部网卡 ( 名称为 vethxxxxxx ) ,效果非常好。缺点是容器每次重启,网卡名称都会改变。

  2. 新建一个 bridge 网络 ( br-xxxxxxxx ) (相当于 docker0 ) ,再使用 Wondershaper 限制其流量,会导致该网卡下的整个网络不可用。

疑问

  1. 能否有办法可以固定内部网卡名称?使其不会重启后改变?

  2. 为什么限制内部网卡无事发生,限制它的父级网卡会导致断网?

  3. 是否有更好的办法限制容器的上下行带宽?

1016 次点击
所在节点    Docker
5 条回复
Frankcox
152 天前
基于现在容器镜像继续写一个新镜像,Dockerfile 里写好步骤,安装 wondershaper ,获取网卡信息,然后限制带宽。打包后再试试呢?
julyclyde
152 天前
@Frankcox dockerfile 是 build 阶段的
Frankcox
152 天前
@julyclyde 我知道,我的意思是把限制带宽这一套写好 sh 脚本,然后再启动时执行,这种不行吗?
julyclyde
152 天前
@Frankcox 限制带宽的操作应该是在容器外执行吧
Aurorataro
145 天前
@Frankcox #1 谢谢回复,我继续学习后再尝试您的方法。目前用 MACVLAN 给需要带宽限制的容器分配独立 IP ,在局域网内部署 openwrt 对 MAC 地址进行 QOS ,暂时解决问题。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/999063

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX