Self-host WireGuard with Unbind
Deploy a WireGuard VPN on your own servers with Unbind. Comes with the wg-easy web interface for managing clients.
WireGuard is a fast, modern VPN. This template runs wg-easy, which adds a web interface for creating clients and handing out their configuration.
Deploy it from the template list. It takes a minute or two.
What gets deployed
| Service | Runs |
|---|---|
| WireGuard | ghcr.io/wg-easy/wg-easy:15.4.0 |
Plan for at least 0.5 CPU cores and 0.25 GB of memory.
Keys and client configurations are kept on a volume mounted at /etc/wireguard.
What you fill in
| Input | Description | Default |
|---|---|---|
| Domain | Domain for the WireGuard instance. | |
| Storage Size | Size of the storage for the WireGuard config data. | 1 GB |
After it deploys
Open the WireGuard service and look at its variables. The username is in INIT_USERNAME (it is admin) and the generated password is in INIT_PASSWORD. Sign in with those at your domain.
Create a client, then scan its QR code with the WireGuard app on your phone, or download the configuration file for your computer.
Good to know
- The VPN uses its own UDP port: Unbind picks a free port between 30000 and 32767 and the server address for you. Both are already inside the client configurations wg-easy generates. You can see them as
INIT_PORTandINIT_HOSTon the service. - Open the port: if your server sits behind a firewall, allow incoming UDP on that port.
- The domain is only for the web interface: VPN traffic does not go through it.