对docker容器进行网络限速
对docker容器进行网络限速
冰糖呼噜AI摘要
正在生成中……
可以通过创建自定义网络并结合 tc
(Traffic Control)工具为 Docker 容器实现上传和下载限速。虽然 Docker 本身没有直接的限速功能,但通过 tc
,你可以控制指定网络接口的带宽。
实现步骤:
1. 创建自定义 Docker 网络
首先,创建一个自定义 Docker 网络,这个网络本身不会限制速度,但会作为我们使用 tc
限速的目标:
1 | docker network create \ |
2. 使用 tc
限制带宽
接下来,使用 Linux 的 tc
命令为 alist_bridge
接口设置上传和下载的带宽限制为 1Mbps(即大约 128KB/s)。
1 | # 清除现有的 tc 规则 |
解释:
tc qdisc add dev alist_bridge root handle 1: htb default 11
:在alist_bridge
网桥上添加根队列调度器(qdisc),使用 HTB(层次令牌桶)控制。tc class add dev alist_bridge parent 1: classid 1:1 htb rate 1mbit
:为网络接口设置 1Mbps 的带宽限制。tc filter add dev alist_bridge ...
:为所有流量(上传和下载)应用上述限速。
显示详细的流量统计,包括传输的数据包数量、速度等
1 | sudo tc -s qdisc show dev alist_bridge |
结果:
所有连接到 alist_limit_net
网络的 Docker 容器将会受到 1Mbps(大约 128KB/s)上传和下载带宽的限制。
3. 运行容器并使用限速网络
你可以通过以下命令运行 Docker 容器并使用这个限速网络:
1 | docker run -d --network alist_limit_net --name="my_container" your_image |
这样,每一个使用 alist_limit_net
网络的 Docker 容器都会自动应用 1Mbps 的上传和下载限速。
注意:
如果
tc
出现冲突或配置异常,可以先删除已存在的流量控制规则:1
sudo tc qdisc del dev alist_bridge root
评论
匿名评论隐私政策
TwikooWaline
✅ 你无需删除空行,直接评论以获取最佳展示效果