qBittorrent/dist/docker
清靈語 ef297dd8e6
Revise Docker document
Currently Docker Inc. recommends installing Docker Desktop instead of the CLI.
docker-compose has been deprecated, replaced by docker compose.

PR #17448.
2022-08-01 13:10:47 +08:00
..
.env Add script for docker-compose 2022-05-05 22:01:49 +08:00
docker-compose.yml Add script for docker-compose 2022-05-05 22:01:49 +08:00
Dockerfile Add support for search engine 2022-05-05 19:52:10 +08:00
entrypoint.sh Run qbt-nox as non-root 2022-05-05 13:39:52 +08:00
Readme.md Revise Docker document 2022-08-01 13:10:47 +08:00

qBittorrent-nox Docker Image

This Dockerfile allows you to build a Docker Image containing qBittorrent-nox

Prerequisites

In order to build/run this image you'll need Docker installed: https://docs.docker.com/get-docker/

If you don't need the GUI, you can just install Docker Engine: https://docs.docker.com/engine/install/

It is also recommended to install Docker Compose as it can significantly ease the process: https://docs.docker.com/compose/install/

Building Docker Image

  • If you are using Docker (not Docker Compose) then run the following commands in this folder:

    export \
      QBT_VERSION=devel
    docker build \
      --build-arg QBT_VERSION \
      -t qbittorrent-nox:"$QBT_VERSION" \
      .
    
  • If you are using Docker Compose then you should edit .env file first. You can find an explanation of the variables in the following Parameters section.
    Then run the following commands in this folder:

    docker compose build \
      --build-arg QBT_VERSION
    

Parameters

Environment variables

  • QBT_EULA
    This environment variable defines whether you accept the end-user license agreement (EULA) of qBittorrent.
    Put accept only if you understand and accepted the EULA. You can find the EULA here.
  • QBT_VERSION
    This environment variable specifies the version of qBittorrent-nox to be built.
    For example, 4.4.0 is a valid entry. You can find all tagged versions here.
    Or you can put devel to build the latest development version.
  • QBT_WEBUI_PORT
    This environment variable sets the port number which qBittorrent WebUI will be binded to.

Volumes

There are some paths involved:

  • <your_path>/config on your host machine will contain qBittorrent configurations
  • <your_path>/downloads on your host machine will contain the files downloaded by qBittorrent

Running container

  • Using Docker (not Docker Compose), simply run:

    export \
      QBT_EULA=accept \
      QBT_VERSION=devel \
      QBT_WEBUI_PORT=8080 \
      QBT_CONFIG_PATH="/tmp/bbb/config"
      QBT_DOWNLOADS_PATH="/tmp/bbb/downloads"
    docker run \
      -t \
      --read-only \
      --rm \
      --tmpfs /tmp \
      --name qbittorrent-nox \
      -e QBT_EULA \
      -e QBT_WEBUI_PORT \
      -p "$QBT_WEBUI_PORT":"$QBT_WEBUI_PORT"/tcp \
      -p 6881:6881/tcp \
      -p 6881:6881/udp \
      -v "$QBT_CONFIG_PATH":/config \
      -v "$QBT_DOWNLOADS_PATH":/downloads \
      qbittorrent-nox:"$QBT_VERSION"
    
  • Using Docker Compose:

    docker compose up
    

Then you can login at: http://127.0.0.1:8080

Stopping container

  • Using Docker (not Docker Compose):

    docker stop -t 1800 qbittorrent-nox
    
  • Using Docker Compose:

    docker compose down