wireguard
WireGuard®(https://www.wireguard.com/) is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography.
Platform availability
Available on 5 of 6 install platforms
Also on Docker Hub and GitHub
Health score
85/100 Excellent
- Maintained
- 100last commit 11 days ago
- Popular
- 713,635 GitHub stars
- Easy to install
- 755 install platforms, install notes, Docker image
- Light to run
- 801 GB minimum RAM, runs on ARM
How is this calculated?
A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). Factors without data are left out and the rest are rescaled.
Availability: platform listings confirmed today, links checked 7 days ago
- GitHub stars
- 3,635
- Open issues
- 3
- Last commit
- 2026-09-24
- Latest release
- 1.0.20260223-r0-ls123
- License
- GPL-3.0
- Activity
- rising
Checked 7 days ago - source: GitHub (linuxserver/docker-wireguard)
Resources & Compatibility
Minimum requirements: 1 GB RAM, 1 CPU core(s), 1.5 GB disk. ARM (e.g. Raspberry Pi) is supported.
Checked 7 days ago - source: Docker Hub image tags and published docs
First-install notes
- Use required Docker settings Run the container with --cap-add=NET_ADMIN (permission to manage network tunnels), -p 51820:51820/udp (the UDP port clients use), the src_valid_mark sysctl (a Linux packet-marking setting), a /config volume, and PUID/PGID (the user/group IDs the container runs as) set to your host user and group. These required settings let WireGuard create and receive VPN tunnels; missing them can stop the VPN fr source
- Back up the /config folder Keep /config on a persistent volume (a saved storage folder) and back it up because it stores your tunnel configs, peer templates, and DNS settings. If it is deleted or lost, the container restarts fresh and your old VPN setup is gone. source
- Check the log after startup After start, look in the container log (the program’s output) for lines saying tunnels were found and 'All tunnels are now active.' If that is missing, the container did not load your tunnel configs, so clients will not connect. source
Fetched 7 days ago - each note links to its source
Variants
Alternatives (12)
- Amnezia VPN - Enables classic, free, and self-hosted VPN modes, works under high censorship, uses a WireGuard-based protocol for better blocking resistan…
- Fossorial Pangolin - Open-source identity-based remote access platform using WireGuard, offering unified management, tunneled connections, granular access contr…
- LogMeIn Hamachi - Seamlessly connects devices and networks, extending LAN-like connectivity to mobile users and teams with a secure, hosted VPN service.
- OpenVPN Connect - OpenVPN Connect provides flexible VPN solutions to secure your data communications, whether it's for Internet privacy, remote access for em…
- Outline VPN - Journalists need safe access to information to research issues, communicate with sources, and report the news.
- Rayfish - A peer-to-peer mesh VPN with zero infrastructure.
- Shadowsocks - Shadowsocks is a self-hosted SOCKS5 proxy that uses the open-source Shadowsocks encryption protocol.
- SoftEther VPN - SoftEther VPN ("SoftEther" means "Software Ethernet") is one of the world's most powerful and easy-to-use multi-protoco…
- Tailscale - Private networks made easy.
- ZeroTier - Zerotier is an open source, cross-platform virtual LAN / VPN
- defguard
- defguard---core
Checked 4 days ago - source: AlternativeTo
Common questions
What Docker settings are required for the WireGuard container to work?
Run the container with --cap-add=NET_ADMIN, publish 51820/udp, set the src_valid_mark sysctl, mount /config, and set PUID/PGID to your host user and group. Missing these settings can stop the VPN from working.
What should I back up to preserve my WireGuard configuration?
Back up the /config folder because it stores your tunnel configs, peer templates, and DNS settings. If it is lost, the container restarts fresh and your old VPN setup is gone.
How can I verify the container loaded my tunnels?
Check the container log after startup for lines saying tunnels were found and 'All tunnels are now active.' If that is missing, the container did not load your tunnel configs, so clients will not connect.
Why might WireGuard not show traffic immediately?
WireGuard is silent by design and sends nothing until there is data to carry.
Answers sourced from github.com, github.com, github.com, www.vpnsmith.com
Community
- Wireguard tunnel : r/selfhosted - Reddit (reddit)
- The WireGuard tutorial that finally got me to convert from OpenVPN - Reddit (reddit)
- Self hosted WireGuard VPN vs Proton VPN? : r/selfhosted - Reddit (reddit)
Collected 6 days ago - public community threads