Skip to content

XC Server Setup

IPTVBoss Pro

XC Server requires Pro.

Validate before production

The macOS launchd and Windows Task Scheduler instructions still require hands-on platform testing. The Windows scheduler also has weaker shutdown guarantees than a true service. The Linux service procedure is the tested native installation path.

The XC Server runs IPTVBoss continuously without the desktop interface and exposes the browser-based Server Console. Start with the XC Server Overview for the runtime model, and Runtime Configuration for XC flags, defaults, and security modes, then choose the installation path for your host:

Path Best suited for Persistent data Process manager
Docker Ubuntu or Debian hosts; optional bundled Caddy Docker named volumes Docker Compose
Linux service A Linux host without a container requirement IPTVBoss default or -directory systemd
macOS service A macOS host without a container requirement IPTVBoss default or -directory launchd
Windows startup task A Windows host without a container requirement; not fully tested Explicit local app-data directory Task Scheduler

The default Docker path runs IPTVBoss by itself and publishes unencrypted HTTP on port 8001 for use on a trusted LAN. For public access, add Caddy to the same Compose stack or use an existing HTTPS reverse proxy. The native Linux, macOS, and Windows paths install Caddy as a host service. Do not expose unencrypted IPTVBoss port 8001 directly to the Internet.

For installations that cannot use a reverse proxy, see Direct HTTPS. IPTVBoss then terminates TLS itself using a PKCS#12 certificate store and normally listens at https://host:8001.

Release channel

Use the stable iptvboss-release repository for application downloads. The Docker templates use git.iptvboss.pro/walrusone/iptvboss-release:release for the latest stable release. For the latest beta, use git.iptvboss.pro/walrusone/iptvboss-beta:beta. See Docker channel settings.

The Docker template keeps the image repository and version tag in .env, so a future distribution-channel change will not require editing compose.yaml. For a long-running installation, pin an exact tested version instead of automatically following a moving channel tag.

For a new Ubuntu VPS using the native Linux service, complete Prepare an Ubuntu VPS first.

Shared requirements

Before using an installation path, prepare:

  • A server you control and can back up.
  • For public HTTPS, a hostname such as boss.domain.com with an A and, when applicable, AAAA record pointing to the server.
  • For Caddy's automatic public HTTPS, inbound TCP ports 80 and 443 forwarded to the server.
  • Administrator or sudo access on the host.
  • A plan for backing up the IPTVBoss data before upgrades or restores.

The basic Caddy configuration for native host installations is deliberately small:

boss.domain.com {
    reverse_proxy 127.0.0.1:8001
}

Caddy's reverse-proxy defaults preserve the original host and supply X-Forwarded-For, X-Forwarded-Host, and X-Forwarded-Proto. Do not add header overrides unless another trusted proxy or CDN creates a specific need for them.

After installation

  1. Confirm that the local health endpoint responds.
  2. Open the Server Console address for the selected setup: the private HTTP address for standalone Docker or the public HTTPS hostname for a proxy setup.
  3. Create the first administrator account and section PIN.
  4. If the server has no database, complete bootstrap in one of two ways:
    • Use GUI pairing to push the database currently open in an IPTVBoss Pro desktop installation.
    • Use Link Restore to initialize the server from a supported backup link.
  5. Review Console Security, then back up the working server data.

The native Windows path is not fully tested. Use Docker when its stronger container lifecycle and backup workflow are preferable.

Continue with First XC Server Connection to configure users, test a player, and set up routine scheduling and backups.