Sign inSign up

dyonr/nzbgetvpn

By dyonr

•Updated over 3 years ago

Image
1

100K+

dyonr/nzbgetvpn repository overview

⁠NZBGet⁠, WireGuard and OpenVPN

Docker Pulls Docker Image Size (tag)

Docker container which runs the latest NZBGet⁠ client while connecting to WireGuard or OpenVPN with iptables killswitch to prevent IP leakage when the tunnel goes down.

⁠Docker Features

  • Base: Debian 10-slim
  • NZBGet⁠ compiled from source
  • Selectively enable or disable WireGuard or OpenVPN support
  • IP tables killswitch to prevent IP leaking when VPN connection fails
  • Specify name servers to add to container
  • Configure UID and GID for config files and /downloads for NZBGet
  • Created with Unraid⁠ in mind

⁠Run container from Docker registry

The container is available from the Docker registry and this is the simplest way to get it
To run the container use this command, with additional parameters, please refer to the Variables, Volumes, and Ports section:

$ docker run --privileged  -d \
              -v /your/config/path/:/config \
              -v /your/downloads/path/:/downloads \
              -e "VPN_ENABLED=yes" \
              -e "VPN_TYPE=wireguard" \
              -e "LAN_NETWORK=192.168.0.0/24" \
              -e "NAME_SERVERS=1.1.1.1,1.0.0.1" \
              -p 6789:6789 \
              -p 6791:6791 \
              --restart unless-stopped \
              dyonr/nzbgetvpn

⁠Variables, Volumes, and Ports

⁠Environment Variables

VariableRequiredFunctionExampleDefault
VPN_ENABLEDYesEnable VPN (yes/no)?VPN_ENABLED=yesyes
VPN_TYPEYesWireGuard or OpenVPN (wireguard/openvpn)?VPN_TYPE=wireguardopenvpn
VPN_USERNAMENoIf username and password provided, configures ovpn file automaticallyVPN_USERNAME=ad8f64c02a2de
VPN_PASSWORDNoIf username and password provided, configures ovpn file automaticallyVPN_PASSWORD=ac98df79ed7fb
LAN_NETWORKYes (atleast one)Comma delimited local Network's with CIDR notationLAN_NETWORK=192.168.0.0/24,10.10.0.0/24
ENABLE_SSLNoLet the container handle SSL (yes/no)?ENABLE_SSL=yesyes
WEBUI_USERNAMEYesUsername used to connect to the WebUIWEBUI_USERNAME=nzbgetnzbget
WEBUI_PASSWORDYesPassword used to connect to the WebUIWEBUI_PASSWORD=tegbzn6789tegbzn6789
NAME_SERVERSNoComma delimited name serversNAME_SERVERS=1.1.1.1,1.0.0.11.1.1.1,1.0.0.1
PUIDNoUID applied to /config files and /downloadsPUID=9999
PGIDNoGID applied to /config files and /downloadsPGID=100100
UMASKNoUMASK=002002
HEALTH_CHECK_HOSTNoThis is the host or IP that the healthcheck script will use to check an active connectionHEALTH_CHECK_HOST=one.one.one.oneone.one.one.one
HEALTH_CHECK_INTERVALNoThis is the time in seconds that the container waits to see if the internet connection still works (check if VPN died)HEALTH_CHECK_INTERVAL=300300
HEALTH_CHECK_SILENTNoSet to 1 to supress the 'Network is up' message. Defaults to 1 if unset.HEALTH_CHECK_SILENT=11
INSTALL_PYTHON3NoSet this to yes to let the container install Python3.INSTALL_PYTHON3=yesno
ADDITIONAL_PORTSNoAdding a comma delimited list of ports will allow these ports via the iptables script.ADDITIONAL_PORTS=1234,8112

⁠Volumes

VolumeRequiredFunctionExample
configYesNZBGet, WireGuard and OpenVPN config files/your/config/path/:/config
downloadsNoDefault downloads path for saving downloads/your/downloads/path/:/downloads

⁠Ports

PortProtoRequiredFunctionExample
6789TCPYesNZBGet WebUI (HTTP)6789:6789
6791TCPYesNZBGet WebUI (HTTPS)6791:6791

⁠Access the WebUI

Access http://IPADDRESS:PORT⁠ from a browser on the same network. (for example: http://192.168.0.90:6789⁠)

⁠Default Credentials

CredentialDefault Value
Usernamenzbget
Passwordtegbzn6789

⁠How to use WireGuard

The container will fail to boot if VPN_ENABLED is set and there is no valid .conf file present in the /config/wireguard directory. Drop a .conf file from your VPN provider into /config/wireguard and start the container again. The file must have the name wg0.conf.

⁠How to use OpenVPN

The container will fail to boot if VPN_ENABLED is set and there is no valid .ovpn file present in the /config/openvpn directory. Drop a .ovpn file from your VPN provider into /config/openvpn and start the container again. You may need to edit the ovpn configuration file to load your VPN credentials from a file by setting auth-user-pass.

Note: The script will use the first ovpn file it finds in the /config/openvpn directory. Adding multiple ovpn files will not start multiple VPN connections.

⁠Example auth-user-pass option for .ovpn files

auth-user-pass credentials.conf

⁠Example credentials.conf

username
password

⁠PUID/PGID

User ID (PUID) and Group ID (PGID) can be found by issuing the following command for the user you want to run the container as:

id <username>

⁠Issues

If you are having issues with this container please submit an issue on GitHub.
Please provide logs, Docker version and other information that can simplify reproducing the issue.
If possible, always use the most up to date version of Docker, you operating system, kernel and the container itself. Support is always a best-effort basis. I personally do not use NZBGet, thus providing support about that product is nearly impossible for me.

Tag summary

Content type

Image

Digest

sha256:d216a6dcd…

Size

54.7 MB

Last updated

over 3 years ago

docker pull dyonr/nzbgetvpn