selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

RelayPanel logo

Self-host RelayPanel

v1.2.17

Self-hosted TCP/UDP port forwarding management panel

ReleaseOpen SourceApache-2.0
Docker ComposeFull install guide
curl -fsSL https://raw.githubusercontent.com/MoeShinX/relay-panel/main/install.sh | bash
Updated9 hours ago
LanguageRust
Setup difficultyModerate
Stars
216
RAM
512 MB (minimum), 1 GB recommended
Storage
2 GB free space
Port
18888 (Web UI and API)
Docker
ghcr.io/moeshinx/relay-panel-panel
Dashboard showing traffic stats and node overviewNode status page with real-time CPU, memory, and connection metricsForwarding rules management interfaceUser management pagePackage shop for user self-service purchasesPackage management for administrators

What is RelayPanel?

RelayPanel is a self-hosted TCP/UDP port forwarding management panel written in Rust. It provides a web UI to manage forwarding rules, device groups, traffic quotas, and real-time node status. Features include TCP/UDP multi-target forwarding with failover and load balancing, connection governance with concurrent limits, user billing with packages and card codes, traffic visualization with 1/7/30-day trends, node management with real-time CPU/memory/connection monitoring, Telegram and email offline alerts, and one-click node upgrades. It runs via Docker Compose with SQLite or PostgreSQL, supports amd64/arm64, and the panel is ~7MB while the node is ~4MB.

Should you self-host RelayPanel?

RelayPanel scores 48/100 on selfhost.directory (how scoring works) and ranks #23 of 34 in Network Management. It has 216 GitHub stars.

It shipped 10 stable releases in the past year. The latest, v1.2.17, came out on 26 October 2026. New versions land roughly every 1 days.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is Apache-2.0-licensed and written mostly in Rust.

Its closest alternative on selfhost.directory is 3x-ui (84/100, 48 757 stars). It scores higher overall, so compare the two before you pick. See RelayPanel vs 3x-ui side by side.

Features

  • Bare-Metal Node Deployment
  • Connection Limits
  • Docker Compose Deployment
  • IPv6 dual-stack
  • Node Management
  • One-Click Panel Updates
  • PROXY Protocol support
  • Rule Import/Export
  • Target Circuit Breaker
  • TCP/UDP Port Forwarding
  • Traffic Visualization
  • User and Device Group Management
  • User Packages and Billing
  • WebSocket Real-Time Config Push

RelayPanel README

How to install RelayPanel

Install RelayPanel with Docker Compose

Environment variables
JWT_SECRET, PANEL_KEY, DATABASE_URL, LISTEN, PUBLIC_PANEL_URL, GEOIP_ENABLED, GEOIP_CACHE_TTL
curl -fsSL https://raw.githubusercontent.com/MoeShinX/relay-panel/main/install.sh | bash

One-line installer that sets up Docker, pulls images, and starts the panel

How to configure RelayPanel

  • DATABASE_URLsqlite:/app/data/data.db?mode=rwcDatabase connection URL

    Database connection URL

    values: sqlite:/app/data/data.db?mode=rwc or postgres://...

  • GEOIP_CACHE_TTL604800GeoIP cache TTL in seconds

    GeoIP cache TTL in seconds

  • GEOIP_ENABLEDtrueEnable node region resolution via GeoIP

    Enable node region resolution via GeoIP

    values: true/false

  • JWT_SECRETJWT signing key, at least 32 characters

    JWT signing key, at least 32 characters

  • LISTEN0.0.0.0:18888Panel listen address

    Panel listen address

  • LISTEN_IPV40.0.0.0Node IPv4 listen address

    Node IPv4 listen address

  • LISTEN_IPV6::Node IPv6 listen address

    Node IPv6 listen address

  • NODE_TOKENInbound device group token from panel UI

    Inbound device group token from panel UI

  • PANEL_KEYPanel authentication key, at least 32 characters

    Panel authentication key, at least 32 characters

  • POLL_INTERVAL10Node polling interval in seconds

    Node polling interval in seconds

  • PUBLIC_PANEL_URLPublic URL nodes use to reach the panel (for reverse proxy setups)

    Public URL nodes use to reach the panel (for reverse proxy setups)

  • RELAYPANEL_NODE_TAG1.2.9Node Docker image tag

    Node Docker image tag

  • RELAYPANEL_PANEL_PORT_BINDING0.0.0.0:18888Panel port binding mode

    Panel port binding mode

    values: 0.0.0.0:18888 (direct), 127.0.0.1:18888 (reverse-proxy/caddy)

  • RELAYPANEL_PANEL_TAG1.2.15Panel Docker image tag

    Panel Docker image tag

RelayPanel releases & version history

More in Network Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…