1、IPTV-API 简介

一个可自定义的IPTV接口更新项目📺,自定义频道菜单,自动获取直播源,测速验效后生成可用的结果,可实现『✨秒播级体验🚀』

特点

  • • ✅ 自定义模板,支持别名,生成您想要的频道

  • • ✅ 支持RTMP推流(live/hls),提升播放体验

  • • ✅ 支持多种获取源方式:本地源、组播源、酒店源、订阅源、关键字搜索

  • • ✅ 支持回放类接口获取与生成

  • • ✅ 支持EPG功能,显示频道预告内容

  • • ✅ 接口测速验效,获取延迟、速率、分辨率,过滤无效接口

  • • ✅ 偏好设置:IPv4、IPv6、接口来源排序优先级与数量配置、白名单、黑名单、归属地与运营商过滤

  • • ✅ 定时执行,北京时间每日 6:00 与 18:00 执行更新

  • • ✅ 支持多种运行方式:工作流、命令行、GUI 软件、Docker(amd64/arm64/arm v7)

更多功能请参见:IPTV-API[1]

2、使用 Docker Compose 部署容器

在 fnOS 系统上,推荐使用项目 Docker Compose 快速部署容器,适合需同时管理多个容器的场景。以下是部署 IPTV-API 服务的详细步骤:

2.1 进入 Docker 项目界面

在 fnOS 系统中,打开 Docker 应用,点击【Compose > 新增项目】,启动创建项目向导。



2.2 配置 Docker Compose 文件

在创建项目向导中,填写项目名称、路径(自动生成)和创建 Docker Compose 配置文件。以下是示例配置:

services:
  iptv-api:
    image:docker.1ms.run/guovern/iptv-api
    container_name: iptv-api
    ports:
      - "8008:8000"
    volumes:
      -./config:/iptv-api/config
      -./output:/iptv-api/output
    restart: always

参数说明

  • • image: 使用镜像 guovern/iptv-api(默认拉取最新版)。

  • • container_name: 容器名称 iptv-api,方便管理。

  • • ports: 将容器 8000 端口映射到宿主机的 8008 端口(局域网访问地址:http://<NAS_IP>:8008)。

  • • volumes: 挂载配置目录(./config 对应NAS路径为: /vol1/1000/Dockers/config)和输出目录(./output 对应NAS路径为: /vol1/1000/Dockers/output),确保数据持久化。

  • • restart: 设置容器始终重启,保障服务高可用。

3、部署项目

勾选页面左下角【创建项目后立即启动】,确认配置无误点击【确定】,系统将自动拉取镜像并启动容器。

640-EkUc

拉取成功后,返回到 Docker 项目管理页面,查看运行状态,显示 正在运行 表示部署成功。

640-isUG

4、访问 IPTV-API 服务

部署成功后,通过浏览器访问 http://<NAS-IP>:8008(替换为实际 IP,如http://192.168.100.189:8008)。
以下为常用接口地址:

  • • M3U 接口ip:8008/m3u

  • • TXT 接口ip:8008/txt

  • • 接口内容ip:8008/content

  • • 测速日志ip:8008/log

首次访问可能提示“未找到结果文件......”,您可以前往【容器】界面,点击右侧的“...”按钮选择【运行日志】显示频道信息,说明已经更新完毕。

5、调用 API 接口

大部分 IPTV 项目都可以直接使用 m3u 地址,此处就以 Windows 播放器 PotPlayer 为例, 选择【打开-> 打开链接】,然后填入我们自己 NAS 提供的 接口 URL 地址。

  • • URLhttp://NAS_IP:8008/m3u(外网需公网 IP)

  • 640-WOOY

    640-MsAY

640-EuaQ

配置完成后,即可畅享直播!

6、注意事项

请注意,本教程中的镜像由第三方开发和维护,教程仅供参考。

其他小贴士

  • • 容器路径可根据习惯调整,但需确保端口不冲突。

  • • 桥接模式下容器网页才可访问

  • • 推荐将 Docker 配置目录存储在 SSD 中,提升性能。

     

 

引用链接

[1] IPTV-API: https://github.com/Guovin/TV

[2] IPTV-API config: https://github.com/Guovin/iptv-api/blob/master/docs/config.md