How it works
From a Docker container to live TV on every screen
Rebel IPTV is a single agent you host: it scrapes your sources and builds your guide. An optional relay steps in only when a source is blocked in your region.
Deploy the agent
Pull the container and bring it up with Docker Compose. On first boot it connects to Rebel's curated channel directory and sets up its dashboard.
It builds your guide
The agent scrapes its sources — plus any M3U files or URLs you add — matches them to the channel directory, validates each feed and drops the ones that are offline, then renders one M3U and a full XMLTV EPG.
It serves & stays online
Your instance serves the playlist, guide and streams, with stream-health filtering dropping dead channels. Flip on relay mode and it pulls feeds through the Rebel IPTV relay instead — so you can still watch sources that are blocked or geo-restricted where you are.
Watch anywhere
Open the dashboard to watch in-browser, or point any IPTV app — or your Jellyfin / Plex tuner — at your M3U + EPG URLs.
Architecture
The pieces, and what each one does
The agent
A single Docker container you host. It scrapes its sources — plus any M3U files or URLs you add — validates each feed, renders one M3U + XMLTV, serves the dashboard, exposes a tuner for media servers, and updates itself in place when you click Update now.
The relay (optional)
Rebel IPTV's servers, used only in relay mode. They proxy each feed in pass-through mode — pulling a source from a region where it's reachable so you can watch channels that are blocked or geo-restricted where you are. No streams are stored.
The channel directory
A curated, canonical directory your agent matches against — the naming and logos that turn raw scraped sources into one clean, de-duplicated guide.
Logos & artwork
Every logo the guide and EPG reference, plus composited team, league and live-event matchup cards, served straight into your guide.
or Rebel relayAgent · curate, render & serveM3U + XMLTV + streamsYour players
Your players always connect to your own instance. In relay mode the feeds come from the Rebel IPTV relay instead of local scraping — the player side never changes.
Two ways to get your feeds
Run it local, or lean on the relay
A per-instance toggle in the dashboard (Settings → Source mode), switchable live — scrape everything yourself, or let the Rebel IPTV relay servers serve the feeds for you.
Scrape it all on your box
By default, the agent scrapes channels and live events directly on your own machine, builds your M3U + guide locally, and proxies the streams itself. Fully self-contained — the only things leaving your network are the upstream fetches you configure.
- Channels and events scraped on-device
- No dependency on Rebel infrastructure
- You choose and manage the sources
Let the relay fetch the feeds
Flip Settings → Source mode to Use Rebel IPTV playlist and your instance stops scraping — it pulls ready-made channels, guide and events from the Rebel IPTV relay in pass-through mode. The relay fetches each source from a region where it's reachable, so you keep watching even when those sources are blocked or geo-restricted in your country.
- Live toggle in the dashboard — no local scraping
- Reaches sources blocked or geo-restricted in your region
- Same lineup & stable channel IDs — bookmarks survive
Ready to wire it up?
The setup guide walks you through Docker Compose, the dashboard, and pointing your first player at the playlist.