在 Ubuntu 上给 Jellyfin 限速,常见有几种做法,取决于你想“限哪里”的速。下面按使用场景说明。
如果你是用 Nginx 做反向代理(大多数情况):
sudo nano /etc/nginx/sites-enabled/jellyfin
location / 里加限速location / {
proxy_pass http://127.0.0.1:8096;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
# 限速示例
limit_rate 2m; # 单连接 2MB/s
limit_rate_after 10m; # 前10MB不限速
}
sudo nginx -t
sudo systemctl reload nginx
✅ 优点:简单、稳定
❌ 缺点:只限 HTTP,不限直连 8096
如果你直接访问 http://IP:8096
tc 限速(系统级)sudo tc qdisc add dev eth0 root tbf rate 20mbit burst 32kbit latency 400ms
查看:
tc qdisc show dev eth0
删除:
sudo tc qdisc del dev eth0 root
⚠️ 影响整张网卡,不推荐生产环境
Jellyfin 本身不能限制总带宽,但能限制:
后台 → 用户 → 用户 → 播放
后台 → 播放 → 转码
✅ 适合“防止某人拖垮带宽”
docker run -d \
--name jellyfin \
--network mynet \
--label "com.github.ipcvm.containers.limit=20mbit" \
jellyfin/jellyfin
或用 docker-compose:
services:
jellyfin:
image: jellyfin/jellyfin
networks:
default:
aliases:
- jellyfin
(Docker 原生不支持限速,需用 tc 或 docker-traffic-shape)
| 场景 | 推荐方式 |
|---|---|
| 有 Nginx | Nginx limit_rate |
| 无代理直连 | tc 限端口 |
| 多用户 | Jellyfin 用户限速 |
| Docker | Nginx + tc |
如果你愿意,可以告诉我:
我可以直接给你一份可复制的配置。