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
| Where | What you install | Runs | Guide |
|---|---|---|---|
| Linux server, VPS or PC (Intel/AMD and ARM 64-bit) | The viaalink-relay binary | As a system service, starts at boot | Run Relay on Linux |
| Raspberry Pi and other ARM boards | The Linux binary for ARM 64-bit, or for 32-bit ARMv6 on older boards | As a system service, like any Linux machine | Run Relay on Linux |
Docker on any host (linux/amd64 and linux/arm64) | The viaalink/relay image, optionally with Caddy in front | As a container that restarts with Docker | Run Relay with Docker |
| ASUSTOR NAS | The Viaalink Relay app from the NAS | As a NAS app, starts with the NAS | Run Relay on ASUSTOR NAS |
| Synology and QNAP NAS | The viaalink/relay Docker image, in the NAS’s container app | As a container | Run Relay on Synology or QNAP |
| Windows (Intel/AMD and ARM 64-bit) | The viaalink-relay program from a .zip | While you are logged in; it is not installed as a Windows service | Run Relay on Windows |
| macOS (Intel and Apple silicon) | The viaalink-relay binary | While you are logged in; it does not install a background service itself | Run 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.