Home / Install on Linux

Install the Pling agent on Linux

The Pling host agent runs on any Linux server or workstation, streams CPU, memory, disk, and network metrics to the iOS app, relays shared SSH/Mosh sessions, runs scheduled commands, and exposes a small local web UI. Native amd64 and arm64 binaries; works on Ubuntu, Debian, Fedora, Arch, Alpine, and Raspberry Pi OS.

Curl one-liner (recommended)

The installer downloads the right binary for your architecture, prompts for your API token, and registers a systemd service that autostarts on boot.

curl -sSL https://raw.githubusercontent.com/Jeramo/pling-agent/main/install.sh | sh

Verify it's running:

pling status
systemctl status pling
journalctl -u pling -n 50 --no-pager
Where to find your token: open the iOS app, go to Settings → Hosts → Add agent. Copy the token and paste it when the installer asks.

Manual install

Pick this when you want full control or to deploy via configuration management. Replace amd64 with arm64 on Raspberry Pi or arm64 servers.

curl -L -o pling \
  https://github.com/Jeramo/pling-agent/releases/latest/download/pling-linux-amd64
chmod +x pling
sudo mv pling /usr/local/bin/
sudo mkdir -p /etc/pling
sudo tee /etc/pling/config.toml >/dev/null <<'EOF'
api_url = "https://agent.plingpush.com"
token = "YOUR_TOKEN_HERE"
metrics_interval = 60
EOF

Run it directly to confirm:

pling serve

Systemd unit

Drop this in /etc/systemd/system/pling.service, then systemctl enable --now pling:

[Unit]
Description=Pling host agent
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/usr/local/bin/pling serve
Restart=on-failure
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target

Configure

Edit the config in $EDITOR:

sudo pling config edit

Or update just the token and bounce the service:

sudo pling set-token <NEW_TOKEN>

Update

Re-run the install script. It replaces the binary, keeps your config, and restarts the systemd unit:

curl -sSL https://raw.githubusercontent.com/Jeramo/pling-agent/main/install.sh | sh

Uninstall

sudo pling uninstall

Removes the binary, config, and systemd unit.

Frequently asked

Does the Pling agent run on Raspberry Pi or arm64 servers?

Yes. Native arm64 binaries are published for every release. The installer detects the architecture automatically; for manual installs grab pling-linux-arm64 from the releases page.

Which Linux distros are supported?

Any Linux with glibc 2.17 or later and an init system. Tested on Ubuntu, Debian, Fedora, Arch, Alpine (musl), and Raspberry Pi OS.

Can I run the Pling agent without systemd?

Yes. Install the binary manually and run pling serve under any supervisor (runit, OpenRC, supervisord, Docker, tmux). The lifecycle subcommands (start, stop, restart) are systemd shortcuts; everything else works without it.

Where are the agent logs?

Systemd installs go to journalctl: journalctl -u pling -f, or use pling logs -f. Manual runs of pling serve write to stdout.

Can I run the agent inside Docker?

Yes. Mount the Docker socket if you want container inventory and start/stop actions, otherwise the agent runs fine in any minimal Alpine or Debian-slim base image.

Installing on a different platform? macOS · Windows