Skip to content

How to setup qbittorrent-nox (with Docker & Caddy)

Ready to use

Description

qbittorrent-nox is a headless version of the qBittorrent client that can be run in a Docker container, allowing for easy management of torrent downloads without a graphical user interface.

Create a DNS record

Go to cPanel and add a new record (e.g. qbt.akdscloud.eu).

Caddy

qbt.akdscloud.eu:443 {
    header Strict-Transport-Security max-age=31536000;
    reverse_proxy localhost:8081
}

Folders

Create the folder structure.

cd ~/services
mkdir -p qbittorrent/config common/downloads/{movies,tvseries,other}

Docker

  1. Add the qbittorrent-nox section to your docker-compose.yml file:

      qbittorrent-nox:
        container_name: qbittorrent-nox
        restart: unless-stopped
        environment:
          - QBT_LEGAL_NOTICE=confirm
          - QBT_VERSION=latest
          - QBT_WEBUI_PORT=8081
          - TZ=Europe/Bucharest
        image: qbittorrentofficial/qbittorrent-nox:latest
        ports:
          - 6881:6881/tcp
          - 6881:6881/udp
          - 8080:8080/tcp
        read_only: true
        stop_grace_period: 30m
        tmpfs:
          - /tmp
        tty: true
        volumes:
          - ./qbittorrent/config:/config
          - ./common/downloads:/downloads
        depends_on:
          - caddy
    

    WebUI Port

    As the name suggests, this is the port used to connect to the qBittorrent Web UI.
    If port 8080 is occupied by another service, you can use another (e.g. 8081), but you need to change it everywhere (QBT_WEBUI_PORT and the ports).

    Connectivity port

    This is the port that leechers will use to connect to your qBittorrent instance to download files that you're seeding.
    This port needs to be forwarded from your router settings if you want to appear as "Connectable" on some torrent sites. But it's not really mandatory. Some torrent sites will strongly encourage it. Others will just recommend it.

  2. Download and start the qbittorrent-nox docker image:

    docker compose up -d qbittorrent-nox
    
  3. Restart Caddy to get an SSL certificate (details here)

Try it out

Go to https://qbt.akdscloud.eu.
You should see the qBittorrent web interface with the login screen.
The username is admin.
The password is printed in the docker logs. Go back to the docker server and type:

docker compose logs -f qbittorrent-nox

You should see something like this:

qbittorrent-nox  | ******** Information ********
qbittorrent-nox  | To control qBittorrent, access the WebUI at: http://localhost:8081
qbittorrent-nox  | The WebUI administrator username is: admin
qbittorrent-nox  | The WebUI administrator password was not set. A temporary password is provided for this session: t3WcPEv7M
qbittorrent-nox  | You should set your own password in program preferences.

Troubleshooting

If it doesn't work, see the troubleshooting guide.

Configuration

Admin password

The first thing you should do is change your admin password.

Torrent queueing

Tools > Options > BitTorrent > Torrent Queueing
Increase the numbers for all.
Example: 10, 20, 20.

Github page