Start Last verified:

Where It Runs

Which operating systems, NAS devices, containers and small boards can run a Viaalink Relay or publish through one, and which guide to follow for each.

The short answer

Every machine can be a Relay, and every machine can be a device that publishes through one. The Relay is one program, viaalink-relay, built for Linux, macOS and Windows, on both Intel/AMD and ARM processors, and as a Docker image. A device that publishes needs only a client: the Viaalink CLI (via) or OpenSSH.

The Relay downloads are published with the first release — ask contact@viaalink.com for early access.

Running the Relay

WhereWhat you installRunsGuide
Linux server, VPS or PC (Intel/AMD and ARM 64-bit)The viaalink-relay binaryAs a system service, starts at bootRun Relay on Linux
Raspberry Pi and other ARM boardsThe Linux binary for ARM 64-bit, or for 32-bit ARMv6 on older boardsAs a system service, like any Linux machineRun Relay on Linux
Docker on any host (linux/amd64 and linux/arm64)The viaalink/relay image, optionally with Caddy in frontAs a container that restarts with DockerRun Relay with Docker
ASUSTOR NASThe Viaalink Relay app from the NASAs a NAS app, starts with the NASRun Relay on ASUSTOR NAS
Synology and QNAP NASThe viaalink/relay Docker image, in the NAS’s container appAs a containerRun Relay on Synology or QNAP
Windows (Intel/AMD and ARM 64-bit)The viaalink-relay program from a .zipWhile you are logged in; it is not installed as a Windows serviceRun Relay on Windows
macOS (Intel and Apple silicon)The viaalink-relay binaryWhile you are logged in; it does not install a background service itselfRun Relay on macOS

Only ASUSTOR has a native NAS package. On Synology and QNAP, use the Docker image.

Whatever it runs on, a Relay needs the same things: a domain name you control, the relay.<your-domain> and *.relay.<your-domain> DNS records, and the ports from Requirements and Network Architecture reachable from the internet. A machine that sleeps or shuts down takes every address with it, so a Relay belongs on something that stays on — a server, a NAS, or a PC that is never switched off.

Publishing from a device

A device that publishes (path A on Three Kinds of Connection) or reaches a private alias (path B) needs one of:

  • OpenSSH — comes with Linux and macOS and with current versions of Windows. Nothing else to install: ssh -p 2222 -R app:80:localhost:3000 relay.example.com.
  • The Viaalink CLI (via) — one command, via publish 3000, and it reconnects by itself. See Install the Viaalink CLI for the platforms it is published for.

Neither needs an open port on the device: the device always connects out to the Relay.

A visitor (path C) needs only a browser, on any system.