A web-based tool for generating WireGuard configuration files for Private Internet Access VPN. While the configs work with any WireGuard client, this tool was specifically built to enable custom Docker network routing on Unraid - allowing individual containers to route all traffic through a VPN tunnel.
- Web-based interface with dark/light theme toggle
- Dynamic region-based config file naming (e.g.,
PIA-us-east.conf) - Automatic Unraid tunnel naming support
- No credentials stored in the container
- Fetches live PIA server list
- Containerised single-image deployment (nginx + Flask)
- Works with any WireGuard client
Search for PIA WireGuard Config Generator in Community Applications and install from there.
docker pull ghcr.io/jobazzy/pia-config-gen-ghcr:latest
docker run -d -p 8292:80 --name pia-wg-config-generator \
ghcr.io/jobazzy/pia-config-gen-ghcr:latestAccess the web interface at http://your-server-ip:8292
- Open the web interface in your browser
- Enter your PIA credentials (username and password)
- Select a region - choose any region or one geographically close to you
- Generate and download - the config file will download automatically
- Import the config into your WireGuard client
The generated configuration file can be used with any WireGuard implementation.
To use the generated config for custom Docker network routing on Unraid:
- Generate and download a config file using the web interface
- Go to Settings → VPN Manager
- Click Import Tunnel
- Select the downloaded
.conffile - The tunnel will be automatically configured with the region name
Once imported, you can select this VPN tunnel as a custom network for any Docker container. All traffic from that container will be routed through the VPN.
The primary motivation for this project was to enable per-container VPN routing on Unraid. Rather than routing your entire server through a VPN, you can:
- Route specific containers (e.g., download clients, media apps) through the VPN
- Keep other containers (e.g., Plex, local services) using your regular network
- Use different VPN regions for different containers
- Maintain full network speed for non-VPN containers
This selective routing provides better performance and flexibility compared to system-wide VPN solutions.
- Docker or Unraid server
- Private Internet Access subscription (affiliate link)
For a complete walkthrough of using this with Unraid Docker containers, visit the SpaceInvaderOne YouTube channel.
Found an issue or have a feature request? Please open an issue on the GitHub repository.
MIT License - see LICENSE file for details