声明:本开源项目仅限个人学习测试使用,禁止商用与对外大规模分发,请遵守国家网络相关法律法规。
一、前言
对于习惯网络看电视的用户来说,M3U直播源是十分熟悉的存在。很多用户会从论坛、社群收集各类公开M3U订阅链接,看似频道数量庞大,但实际使用过程中往往问题频发。
这类网络流传的静态直播源普遍存在稳定性差的问题。链接由第三方维护,一旦维护方关闭服务、修改接口或者更换域名,整套订阅便会直接失效。频道黑屏、播放卡顿、花屏马赛克属于常态,使用者需要反复寻找、替换新的源链接,耗费大量时间,却依旧无法获得稳定的观看体验。
想要摆脱频繁找源、换源的困扰,拥有一套完全由自己掌控的直播服务,开源项目iPTV提供了可行的解决方案。基于Docker即可完成部署,内置800余路频道资源,支持局域网内多设备同时使用。本文将完整介绍项目特性,并提供Windows平台完整部署、配置以及外网远程访问的实操教程。
二、关于iPTV
iPTV是一套模块化自托管私有直播系统,区别于网上直接汇总整理好的静态M3U文件。它的工作逻辑为主动抓取各大平台公开直播资源,将不同来源拆分为独立模块运行。
这种模块化架构带来最核心的优势:单个资源模块接口异常时,仅对应部分频道受影响,其余频道可以正常工作,不会出现整套源批量失效、整体崩溃的情况。
核心功能与特性
- 丰富的频道资源库 内置800+频道,覆盖央视全系列频道、CGTN多语种频道、全国各省级卫视;包含iPanda熊猫直播、全国城市景观慢直播;体育板块自动同步近三日赛事赛程;同时集成国际频道、少儿影视频道,聚合B站、虎牙、斗鱼平台直播间。多数频道提供高清、超清画质,部分支持4K输出。
- 灵活的频道管理能力 支持频道自定义分组、排序、重命名;提供永久屏蔽规则,被屏蔽的频道不会跟随源更新再次出现,保持频道列表整洁。各个资源抓取模块可独立开启或关闭,用户可以按需取舍不同平台的资源。
- 节目单与多用户支持 自带EPG电子节目指南,覆盖五百余个主流频道,可查看节目名称与播出时间,实现接近有线电视的观看体验。支持多用户管理,可为不同设备生成独立M3U订阅链接。
- 配置可迁移 支持配置文件一键导入导出,重装系统、更换主机时,直接导入配置即可恢复全部设置,无需重复配置。
项目原生仅支持局域网内部访问。在家庭WiFi环境下,电脑、电视、手机均可正常使用;离开本地局域网,便无法直接访问服务,该问题可以通过内网穿透工具cpolar解决。
三、Windows部署安装iPTV
前置环境准备
部署前电脑需要安装Docker Desktop,完成安装后确认Docker服务处于正常运行状态。
接着我在windows上面打开终端,ssh进入群晖里面
1.打开Windows PowerShell终端,执行命令,创建项目数据存储目录:
mkdir -p /volume1/docker/akiralereal/data
2.切换至刚刚创建的工作目录:
cd /volume1/docker/akiralereal
3.执行容器启动命令,拉取镜像并运行iPTV服务:
docker run -d --name=iptv --restart=unless-stopped --init -p 1905:1905 -v $(pwd)/data:/iptv/data -e mport=1905 akiralereal/iptv:latest
等待镜像下载与容器初始化完成。部署完成后,在浏览器输入本地地址127.0.0.1:1905/admin,即可进入iPTV的Web管理后台。局域网其他设备访问,将127.0.0.1替换为部署主机的局域网IP即可。
四、简单使用iPTV
进入Web后台之后,可以对整套直播系统进行完整的管理配置。
- 我的频道 页面展示全部800+频道,已经按照央视、卫视、地方台、体育、慢直播、国际频道完成分类。可对频道进行分组、排序、重命名操作。针对不需要、无效的频道,启用永久屏蔽规则,后续源更新不会重新加载被屏蔽频道。同时页面可以获取M3U订阅链接,用于播放器导入。

- 源管理 所有资源抓取模块独立开关,央视频、咪咕、广电、直播平台、国际源均可单独启用或禁用,从架构层面规避整体失效风险。

- 设置 实现配置的导入导出,设备迁移、系统重装场景下,直接导入配置即可复原全部自定义设置。

- EPG节目单 查看主流频道的节目播出时间表,获取节目预告信息。
- 用户管理 创建多个独立用户,生成差异化M3U订阅链接,满足家中多设备的使用需求。

客户端播放
将后台复制的M3U链接导入播放器即可播放。电脑端推荐PotPlayer,电视、盒子设备推荐TVBOX。
- 💻电脑端:推荐 PotPlayer (官网:https://potplayer.tv/)
- 📺电视 / 盒子端:推荐 TVBOX(官网:https://tvbox.clbug.com/)
复制后台生成的 M3U 链接,粘贴到播放器就直接开看!
导入完成后,局域网内所有设备都可以流畅播放高清直播内容。
重要说明:当前服务仅限家庭局域网访问。外出使用移动网络时,无法直接连接本机部署的iPTV服务。想要实现外网访问,传统方式需要申请公网IP,配置路由器端口映射,配置复杂度高,同时存在网络安全隐患。下文将介绍借助cpolar实现外网远程访问的完整方案。
五、介绍以及安装cpolar
cpolar是一款内网穿透工具,核心作用是将本地运行的服务映射至公网网络,无需公网IP,无需修改路由器配置,即可实现外部网络访问本地服务。
cpolar免费版本提供随机公网域名,但域名每24小时会自动变更。对于iPTV这类长期使用的服务,域名频繁变化会导致M3U订阅链接失效,每次外出使用都需要重新获取链接,使用体验较差。如果需要长期稳定使用,建议升级套餐获取固定二级子域名,域名一经保留不会变动,M3U订阅链接可以长期复用,适配长期观看直播的使用场景。
Windows端安装步骤
使用一键脚本安装命令:
sudo curl https://get.cpolar.sh | sh
安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar
Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:
打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。
六、使用cpolar远程使用iPTV
步骤1:官网预留二级子域名
登录cpolar网页管理后台,选择【预留】-【保留二级子域名】;地区选择china top,自定义域名名称,确认保留。
复制生成的二级子域名回到配置界面
步骤2:本地创建隧道
进入cpolar本地WebUI,选择隧道管理,点击创建隧道。
- 隧道名称:自定义,例如
iptv-service - 本地地址:填写
1905(iPTV服务端口) - 域名类型:选择二级子域名,粘贴刚刚复制的预留域名
- 地区:选择
china top完成参数填写后点击创建。
步骤3:获取公网访问地址
在【在线隧道列表】页面,查看隧道生成的公网访问地址。
步骤4:iPTV后台配置公网地址
进入iPTV后台设置页面,把cpolar生成的公网地址填入公网地址输入框,保存系统设置。
配置完成之后,即可通过两套地址访问服务:
- Web管理后台:
你的固定二级子域名/admin - M3U播放订阅:
你的固定二级子域名/m3u
无论身处何地,只要设备具备网络,导入固定M3U链接,就可以远程使用整套私有iPTV直播系统。固定域名不会随机变更,一次配置之后无需反复修改订阅链接。
七、结尾
网络上流传的M3U直播源受制于第三方维护,稳定性没有保障。借助iPTV开源项目,通过Docker完成本地部署,用户可以自主掌控整套直播服务,800多路频道覆盖多类观看需求,模块化架构大幅降低源整体失效概率,能够满足家庭局域网多设备看电视的需求。
本项目仅用于个人学习研究,请勿用于商业传播,使用过程中请遵守网络相关法律法规。如果本文的部署教程对你有所帮助,可以收藏留存,便于后续实操查阅。




























