NZBGet builds from nzbgetcom/nzbget repository
NZBGet is an efficient, open-source Usenet software designed for downloading binary content from Usenet newsgroups.
Architecture |
---|
x86-64 |
arm64 |
armhf |
Tag | Description |
---|---|
latest | Stable nzbget releases (from main repository branch) |
testing | Development nzbget builds (from develop repository branch) |
v* | Version-specific release builds (like v22.0 for 22.0 nzbget release) |
docker-compose (recommended)
---
version: "2.1"
services:
nzbget:
image: nzbgetcom/nzbget:latest
container_name: nzbget
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- NZBGET_USER=nzbget #optional
- NZBGET_PASS=tegbzn6789 #optional
volumes:
- /path/to/config:/config
- /path/to/downloads:/downloads #optional
ports:
- 6789:6789
restart: unless-stopped
docker run -d \
--name=nzbget \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Europe/London \
-e NZBGET_USER=nzbget `#optional` \
-e NZBGET_PASS=tegbzn6789 `#optional` \
-p 6789:6789 \
-v /path/to/config:/config \
-v /path/to/downloads:/downloads `#optional` \
--restart unless-stopped \
nzbgetcom/nzbget:latest
NZBGet container can be configured by passing environment variables to it. This can be done in docker-compose mode by specifying environment:
and in cli mode by using -e switch.
Parameter | Description |
---|---|
PUID | UserID (see below) |
PGID | GroupID (see below) |
TZ | Timezone |
NZBGET_USER | User name for web auth |
NZBGET_PASS | Password for web auth |
When using volumes (-v flags) permissions issues can arise between the host OS and the container. To avoid this problem we allow to specify the user PUID and group PGID.
The example above uses PUID=1000 and PGID=1000. To find the required ids, run id user
:
$ id user
uid=1000(user) gid=1000(users) groups=1000(users)
For development purposes can be used Dockerfile or docker-compose file from official repository (docker
folder):
git clone https://github.com/nzbgetcom/nzbget.git
cd docker
docker compose up
-or-
docker build . -t nzbget-local
Dockerfile supports next build arguments:
Argument | Description |
---|---|
NZBGET_RELEASE | Branch name or tag to build from |
UNRAR_VERSION | Unrar version |
UNRAR_NATIVE | Build native unrar (see below) |
MAKE_JOBS | Number of make jobs for speed up build |
Docker images also available on GitHub. For use - replace nzbgetcom/nzbget:TAG
with ghcr.io/nzbgetcom/nzbget:TAG
in above examples.
NZBGet docker image bundled with Python 3.11
In case a linux image or docker image is slower than expected, here are some tips to increase download speed:
- Increase number of server connections (NEWS-SERVERS -> Connections) - default is 8, and 16 and 32 are worth trying
- For slower machines/hosts - increase article read chunk size from 4 to 64 (CONNECTION -> ArticleReadChunkSize). This is new setting available in v23.
Unrar from version 7.0 supports hardware crypto acceleration for unpacking encrypted archives. For compatibility with most hardware nzbgetcom image unrar built with next march parameters:
- x86_64: x86-64-v2
- arm64: armv8-a
- armhf: armv7-a
To build image on hardware which support crypto acceleration with native-optimized unrar can be used docker-compose like this (also needed entrypoint.sh and Dockerfile from official repository):
---
services:
nzbget:
build:
context: .
args:
# branch to build nzbget from
NZBGET_RELEASE: "develop"
# make jobs == host cpu cores
MAKE_JOBS: 4
# build native unrar
UNRAR_NATIVE: "true"
environment:
- PUID=1000
- PGID=1000
- TZ=Europe/London
- NZBGET_USER=nzbget
- NZBGET_PASS=tegbzn6789
volumes:
- ./config:/config
- ./downloads:/downloads
ports:
- 6789:6789
restart: unless-stopped