Self-host wg-easy
VPN & Mesh Networkingdeployed & timed by usprices checked · Jul 2026
The easiest way to run your own WireGuard VPN server, with a clean web UI for adding and managing clients — a self-hosted alternative to Tailscale and commercial VPNs for private access to your network from anywhere.
Tailscale / yr$96
Self-hosted / yr~$55
You keep$41/yr
Pocket the difference — spin it up on a cheap VPS in minutes.Start free on Kamatera →
Key facts
CategoryVPN & Mesh Networking
LicenseAGPL-3.0
StackTypeScript, Node.js
Min RAM256 MB
Dockeryes
Difficulty
What you need
- Any VPS with at least 256 MB of RAM
- A domain you control — most self-hosted setups need HTTPS in front of them
- Under an hour if you've used Docker before
Install
Run these commands on your server:
# wg-easy — single container; web UI on 51821/tcp, tunnel on 51820/udp
# The /lib/modules mount is required — without it wg0 never comes up.
docker run -d --name wg-easy --restart unless-stopped \
-e INIT_ENABLED=true -e INIT_HOST=vpn.example.com \
-v ./etc_wireguard:/etc/wireguard \
-v /lib/modules:/lib/modules:ro \
-p 51820:51820/udp -p 51821:51821/tcp \
--cap-add NET_ADMIN --cap-add SYS_MODULE ghcr.io/wg-easy/wg-easy:15deploy guideHow to Deploy wg-easy on a VPSvps picksBest VPS for self-hostingbenchmarked quarterly · re-priced monthly
An alternative to
Head-to-head
More in VPN & Mesh Networking
VPN & Mesh NetworkingHeadscale
Go
moderateRead guide →
VPN & Mesh NetworkingNetBird
Go
hardRead guide →
VPN & Mesh NetworkingPangolin
TypeScriptGo
moderateRead guide →