iptv-tool

taksssssGPL-2.0活跃维护

IPTV 直播源一站式管理工具箱,Docker 部署,支持 EPG、直播源和台标管理,兼容 DIYP、百川、超级直播及 xmltv 格式。

IPTV工具箱, Docker🐳部署,支持EPG管理、直播源管理、台标管理,兼容DIYP/百川、超级直播及xmltv格式。

暂无版本1,161star +3 / 7 天299fork同步于 2026-11-10 17:52 UTC

怎么上手

由 README 提炼,执行前请确认
bash <(curl -Ls https://raw.githubusercontent.com/taksssss/iptv-tool/master/install.sh)
docker run -d --name php-epg -p 5678:80 -v $HOME/epg:/htdocs/data -e PHP_MEMORY_LIMIT=512M -e ENABLE_FFMPEG=false --restart unless-stopped taksss/php-epg:latest
硬件要求按 README 说明

README 未说明显存或 GPU 要求;提供 amd64、arm64、armv7 架构镜像,基于 Alpine 构建,压缩后约 20 MB,普通服务器或 NAS 即可运行

有 Docker 镜像
下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

Docker 部署的 IPTV 工具箱,统一管理 EPG 节目单、直播源和台标,兼容 DIYP、超级直播与 xmltv

IPTV 直播源一站式管理工具箱,Docker 部署,支持 EPG、直播源和台标管理,兼容 DIYP、百川、超级直播及 xmltv 格式。

核心能力

  • 按 DIYP/百川、超级直播、xmltv 多格式输出接口
  • 聚合 TXT/M3U 直播源并做测速校验与代理
  • 台标模糊匹配并支持 tvbox 接口
  • 频道别名、正则与繁体中文模糊匹配
  • 集成 Memcached 缓存并可选 Redis,支持定时更新

容易踩的坑

默认端口 5678,注意端口占用;管理页默认密码为空,需自行设置;EPG 数据需在页面添加地址后手动点「更新数据」拉取,GitHub 源要确保可访问;ffmpeg 默认关闭,需要时用 ENABLE_FFMPEG=true 开启

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

0 个版本

暂无 release 数据(可能没有发版,或尚未同步)。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    📺 IPTV工具箱

    GitHub Stars GitHub Forks GitHub Issues GitHub Pull Requests License Docker Pulls Image Size

    IPTV 工具箱, Docker 部署,支持 EPG 管理、直播源管理、台标管理,兼容 DIYP/百川、 超级直播以及 xmltv 格式。

    [!TIP] ⚠️ 使用前请仔细阅读「管理页面」底部的「使用说明」

    原贴:【IPTV工具箱】EPG节目单管理、直播源管理、台标管理

    xmltv 用户使用方法:【一键生成】匹配 M3U 文件的 XML 节目单

    直播源管理 使用方法:【IPTV工具箱】直播源管理使用说明

    自定数据源 使用方法:【IPTV工具箱】自定义数据源(timetv、51livetv、diyp)

    💻 主要功能

    📡 多格式:支持返回 DIYP/百川、超级直播以及 xmltv 格式文件。

    🐳 多架构:提供 amd64、arm64 和 armv7 架构的 Docker 镜像。

    📦 小体积镜像:基于 Alpine 构建,压缩后仅 20 MB。

    🗃️ 数据库管理:支持 SQLite 和 MySQL 数据库,内置 phpLiteAdmin 管理工具。

    🖼️ 台标管理:支持台标模糊匹配,支持 tvbox 接口。

    ➰ 直播源管理:支持聚合 TXT/M3U 直播源、测速校验、直播源代理。

    🔒 访问权限控制:支持设置 TOKEN 、User-Agent、IP 黑白名单。

    ⏱️ 缓存支持:集成 Memcached,支持 Redis。

    🔄 频道匹配:支持繁体中文频道匹配、模糊匹配;支持频道别名、正则表达式。

    ⏳ 定时任务:支持定时更新数据。

    📝 节目单生成:支持生成指定频道节目单并匹配 M3U 的 xmltv 格式文件。

    🗂️ 兼容多种格式:支持不同标准格式的 XMLTV 文件,支持自定义数据源。

    🛠️ 文件管理:集成 tinyfilemanager 文件管理器。

    🌐 界面设置:包含简单易用的网页设置页面,便于操作和管理。

    内置正则表达式说明:

    • 包含 regex:
    • 示例:
      • CCTV$1 => regex:/^CCTV[-\s]*(\d{1,2}(\s*P(LUS)?|[K\+])?)(?![\s-]*(美洲|欧洲)).*/i :将 CCTV 1综合、CCTV-4K频道、CCTV - 5+频道、CCTV - 5PLUS频道 等替换成 CCTV1、CCTV4K、CCTV5+、CCTV5PLUS(排除 CCTV4美洲 和 CCTV4欧洲)

    📝 更新日志

    CHANGELOG.md

    🚀 部署步骤

    部署/管理脚本(推荐)

    bash <(curl -Ls https://raw.githubusercontent.com/taksssss/iptv-tool/master/install.sh)
    

    或者

    bash <(curl -Ls https://gitee.com/taksssss/iptv-tool/raw/main/install.sh)
    

    或者

    bash <(curl -Ls https://gcore.jsdelivr.net/gh/taksssss/iptv-tool@master/install.sh)
    

    手动部署

    docker run -d --name php-epg \
      -p 5678:80 \
      -v $HOME/epg:/htdocs/data \
      -e PHP_MEMORY_LIMIT=512M \
      -e ENABLE_FFMPEG=false \
      --restart unless-stopped \
      taksss/php-epg:latest
    

    $HOME/epg:默认数据目录,根据需要自行修改
    5678:默认端口,根据需要自行修改(注意端口占用)
    -e PHP_MEMORY_LIMIT=512M:PHP 内存限制,默认 512M
    -e ENABLE_FFMPEG=true:启用 ffmpeg 组件
    无法正常拉取镜像的,可将 taksss/php-epg:latest 替换为 ccr.ccs.tencentyun.com/taksss/php-epg:latest

    HTTPS 相关:
    -p 5679:443:映射 HTTPS 端口
    -e ENABLE_HTTPS=true:启用 HTTPS
    -e FORCE_HTTPS=true:强制跳转到 HTTPS
    -v /path/to/server.crt:/etc/ssl/certs/server.crt:挂载证书文件
    -v /path/to/server.key:/etc/ssl/private/server.key:挂载私钥文件

    手动升级

    docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower php-epg --cleanup --run-once
    

    🛠️ 使用步骤

    1. 在浏览器中打开 http://{服务器IP地址}:5678/manage.php

    2. 默认密码为空,根据需要自行设置

    3. 添加 EPG 地址, GitHub 源确保能够访问,点击 保存配置 保存

    4. 点击 更新数据 拉取数据,点击 更新日志 查看日志,点击 频道管理 查看具体条目

    5. 设置 定时任务 ,点击 保存配置 保存,点击 定时日志 查看定时任务时间表

      建议从 凌晨1点 左右开始抓,很多源 00:00 ~ 00:30 都是无数据。 隔 6 ~ 12 小时抓一次即可。

    6. 点击 更多设置,选择是否 生成xml文件、xml内容,设置匹配频道列表

    7. 测试各个接口的返回结果是否正确:

    • xmltv 接口:http://{服务器IP地址}:5678/index.php
    • DIYP/百川 接口:http://{服务器IP地址}:5678/index.php?ch=CCTV1
    • 超级直播 接口:http://{服务器IP地址}:5678/index.php?channel=CCTV1
    • tvbox 接口:
      • "epg":"http://{服务器IP地址}:5678/index.php?ch={name}&date={date}"
      • "logo":"http://{服务器IP地址}:5678/index.php?ch={name}&type=icon"
    1. 将 http://{服务器IP地址}:5678/index.php 填入 DIYP、TiviMate 等软件的 EPG 地址栏
    • ⚠️ 直接使用 docker run 运行的话,可以将 :5678/index.php 替换为 :5678/。
    • ⚠️ 部分软件不支持跳转解析 xmltv 文件,可直接使用 :5678/t.xml.gz 或 :5678/t.xml 访问。

    快捷键:

    • Ctrl + S:保存设置
    • Ctrl + /:对选中 EPG 地址设置(取消)注释

    ☕ Buy Me a Coffee

    查看打赏列表

    ⭐ Star History

    👍 特别鸣谢