Runs the natpmp port forward loop for ProtonVPN. Optionally update qBittorrent port
1.3K
Thank you for all the pulls! I'm new to docker and bash still so thank you for the support
Source code: https://github.com/blomstertj/protonvpn-natpmp-docker
Runs the NATPMP loop from the ProtonVPN manual port forward guide in a nice script. This process is detailed in Proton's support article here: https://protonvpn.com/support/port-forwarding-manual-setup#linux
The purpose of the container is to spit out the port numbers to put in your other applications like a BitTorrent client. You don't need to run natpmpc on the same device, the ports will work for all devices that use the VPN. Fill in your qBittorrent API key and the web UI URL then the container can set the port number in qBittorrent via API automatically.
I connect to ProtonVPN using WireGuard with my router. This configuration does not support port forwarding unless you have a loop running all the time to keep the port forwards open. I decided to create my own light weight container based on Alpine to run this natpmpc loop with some cleaned up console output. I use Dockhand to view the console logs but you can run "docker logs ContainerName" to view the console.
services:
container_name: "protonvpn-natpmp"
environment:
- "COMPACT_OUTPUT=true"
- "SKIP_IPME_CHECK=false"
- "TZ=America/Chicago"
hostname: "protonvpn-natpmp"
image: "blomstertj/protonvpn-natpmp:latest"
mac_address: "92:ec:7c:a2:69:fd"
networks:
bond0-macvlan:
ipv4_address: "192.168.1.100"
restart: "always"
networks:
bond0-macvlan:
external: true
name: "bond0-macvlan"
services:
container_name: "protonvpn-natpmp-qbsync"
environment:
- "COMPACT_OUTPUT=true"
- "SKIP_IPME_CHECK=false"
- "TZ=America/Chicago"
- "QBITTORRENT_API_KEY=abc123"
- "QBITTORRENT_WEBUI_URL=http://qbittorrent:8080"
hostname: "protonvpn-natpmp-qbsync"
image: "blomstertj/protonvpn-natpmp:latest"
mac_address: "92:ec:7c:a2:69:fd"
networks:
bond0-macvlan:
ipv4_address: "192.168.1.100"
restart: "always"
networks:
bond0-macvlan:
external: true
name: "bond0-macvlan"

Content type
Image
Digest
sha256:9a36640a4…
Size
11.4 MB
Last updated
2 days ago
docker pull blomstertj/protonvpn-natpmp