Skip to content

Client Deployment

We recommend deploying the Client via Docker. However, installing directly on the target machine allows you to run commands as root via a remote terminal, which can simplify upgrades and management.

Note ⚠️: The startup commands for client and server may change as the project evolves. Although we strive for backward compatibility, always use the commands generated by the Master’s Web UI.

Preparation

Open the Master’s Web UI and log in. If you don’t have an account, register—the first user becomes the administrator.

In the sidebar, navigate to Client, click New, enter a unique Client ID, and click Save.

After refreshing, your new Client appears in the list.

Before deploying the Client, ensure the corresponding Server’s configuration is correct; otherwise, the Client cannot connect.


Deploying on Linux

Direct Execution

  1. Create a dedicated directory on your system.

  2. In the Master’s Web UI, click the ID (show install command) field for your Client. Copy the Linux install command, for example:

    bash
    curl -fSL https://raw.githubusercontent.com/VaalaCat/frp-panel/main/install.sh \
      | bash -s -- client -s abc -i user.c.client1 \
      --api-url http://frpp.example.com:9000 \
      --rpc-url grpc://frpp-rpc.example.com:9001
  3. If you’re in mainland China, you may want to use a GitHub proxy. For example, with ghfast:

    bash
    curl -fSL https://ghfast.top/https://raw.githubusercontent.com/VaalaCat/frp-panel/main/install.sh \
      | bash -s -- --github-proxy https://ghfast.top/ client -s abc -i user.c.client1 \
      --api-url http://frpp.example.com:9000 \
      --rpc-url grpc://frpp-rpc.example.com:9001
  4. If you use a reverse-proxy with TLS (443 → Master 9000/API), adjust the command:

    bash
    curl -fSL https://ghfast.top/https://raw.githubusercontent.com/VaalaCat/frp-panel/main/install.sh \
      | bash -s -- --github-proxy https://ghfast.top/ client -s abc -i user.c.client1 \
      --api-url https://frpp.example.com:443 \
      --rpc-url wss://frpp.example.com:443

Docker Compose Deployment

  1. In the Master’s Web UI, click Key (show startup command) for your Client. Copy the command:

    bash
    ./frp-panel client -s abc -i user.c.client1 \
      --api-url http://frpp.example.com:9000 \
      --rpc-url grpc://frpp-rpc.example.com:9001
  2. If using TLS proxy, modify:

    bash
    ./frp-panel client -s abc -i user.c.client1 \
      --api-url https://frpp.example.com:443 \
      --rpc-url wss://frpp.example.com:443
  3. Create docker-compose.yaml:

    yaml
    version: '3'
    services:
      frp-panel-client:
        image: vaalacat/frp-panel
        container_name: frp-panel-client
        network_mode: host
        restart: unless-stopped
        command: client -s abc -i user.c.client1 \
          --api-url https://frpp.example.com:443 \
          --rpc-url wss://frpp.example.com:443

Install as a systemd Service

The frp-panel binary can manage a systemd service named frpp. Use frp-panel --help to view available commands. Examples:

  • Install Client (or Server) with specific parameters:

    bash
    sudo ./frp-panel install client -s abc -i user.c.client1 \
      --api-url https://frpp.example.com:443 \
      --rpc-url wss://frpp.example.com:443
  • Uninstall the frpp service:

    bash
    sudo ./frp-panel uninstall
  • Start the frpp service:

    bash
    sudo ./frp-panel start
  • Stop the frpp service:

    bash
    sudo ./frp-panel stop
  • Restart the frpp service:

    bash
    sudo ./frp-panel restart

Deploying on Windows

Direct Execution

In PowerShell, in the directory containing the executable, run the startup command copied from the Web UI:

powershell
.\frp-panel.exe client -s abc -i user.c.client1 \
  --api-url https://frpp.example.com:443 \
  --rpc-url wss://frpp.example.com:443

Install as a Windows Service

Use the same commands as on Linux without sudo and adjust the executable path:

powershell
C:\frpp\frp-panel.exe install client -s abc -i user.c.client1 \
  --api-url https://frpp.example.com:443 \
  --rpc-url wss://frpp.example.com:443

# Then manage the service:
C:\frpp\frp-panel.exe start
C:\frpp\frp-panel.exe stop
C:\frpp\frp-panel.exe uninstall