NZBGet builds from nzbgetcom/nzbget repository

July 2, 2025 ยท View on GitHub

NZBGet logo

NZBGet builds from nzbgetcom/nzbget repository

NZBGet is an efficient, open-source Usenet software designed for downloading binary content from Usenet newsgroups.

Supported Architectures

Architecture
x86-64
arm64
armhf

Version Tags

TagDescription
latestStable nzbget releases (from main repository branch)
testingDevelopment nzbget builds (from develop repository branch)
debugDevelopment nzbget builds with debug enabled (from develop repository branch)
v*Version-specific release builds (like v22.0 for 22.0 nzbget release)

Usage

docker-compose (recommended)

---
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 cli

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

Supported environment variables

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.

ParameterDescription
PUIDUserID (see below)
PGIDGroupID (see below)
TZTimezone
NZBGET_USERUser name for web auth
NZBGET_PASSPassword for web auth

User / Group Identifiers

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)

Building locally

For development purposes the Docker Image can be build using the locally cloned repository (docker folder):

git clone https://github.com/nzbgetcom/nzbget.git
docker compose -f docker/docker-compose.yml up --build
-or-
cd docker
docker build . -t nzbget-local

Dockerfile supports next build arguments:

ArgumentDescription
UNRAR6_VERSIONUnrar 6 version
UNRAR7_VERSIONUnrar 7 version
UNRAR7_NATIVEBuild native unrar (see below)
MAKE_JOBSNumber of make jobs for speed up build

ghcr.io

Docker images also available on GitHub. For use - replace nzbgetcom/nzbget:TAG with ghcr.io/nzbgetcom/nzbget:TAG in above examples.

Python version

NZBGet docker image bundled with Python 3.11

Troubleshooting max speed issues

In case a linux image or docker image is slower than expected, here are some tips to increase download speed:

  1. Increase number of server connections (NEWS-SERVERS -> Connections) - default is 8, and 16 and 32 are worth trying
  2. For slower machines/hosts - increase article read chunk size from 4 to 64 (CONNECTION -> ArticleReadChunkSize). This is new setting available in v23.

Unrar 7 support

The NZBGet docker image contains the optimized unrar7 binary. To use unrar7, change in settings UNPACK - UnrarCmd to unrar7. Unrar 7 built with next march parameters:

  • x86_64: x86-64-v2
  • arm64: armv8-a+crypto+crc
  • armhf: armv7-a

More information about unrar performance: Performance tips

Native unrar 7 build support

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:
        # make jobs == host cpu cores
        MAKE_JOBS: 4
        # build native unrar
        UNRAR7_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