qBittorrent — один из лучших торрент-клиентов, известный своей легкостью и многофункциональностью.
Благодаря наличию собственного веб-интерфейса qBittorrent NOX является отличным торрент-клиентом для работы в контейнере Docker.
Мы будем использовать официальный образ контейнера qBitttorrent NOX, поэтому вы всегда будете получать последние версии. Кроме того, у него есть сборки для x86, AMD64 и даже операционных систем на базе ARM, это означает, что он должен работать практически на любом устройстве.
Установка qBittorrent
Для установки будет использоваться виртуальная машина Proxmox со следующим характеристиками:
- OS: Ubuntu 24.04
- CPU: 2
- RAM: 2 Gb
- Disk: 30 Gb
Обновляем пакеты
apt update && apt upgrade -y
Устанавливаем docker
curl -sSL https://get.docker.com | sh
sudo groupadd docker
sudo usermod -aG docker ${USER}
sudo apt install docker-compose
sudo systemctl enable docker
sudo reboot
Настройка docker-compose.yaml
Создаем файл docker-compose со следующим содержимым
version: "3.9"
services:
qbittorrent-nox:
container_name: qbittorrent-nox
restart:unless-stopped
environment:
#- PGID=1000
#- PUID=1000
- QBT_EULA=accept
- QBT_VERSION=latest
- QBT_WEBUI_PORT=8181
- TZ=Europe/Moscow
image: qbittorrentofficial/qbittorrent-nox:latest
ports:
- 6881:6881/tcp
- 6881:6881/udp
- 8181:8181/tcp
read_only: true
stop_grace_period: 30m
tmpfs:
- /tmp
tty: true
volumes:
- ./config:/config
- /mnt/hdd/shared_folder/download:/downloads
Небольшое пояснение того, что делает каждая строка
QBT_EULA
: qBittorrent требует, чтобы вы согласились с их EULA, прежде чем вы сможете использовать их клиент. Если вы принимаете эти условия, используйте слово accept
.
TZ
: Следующее, что вам нужно сделать, это указать часовой пояс для qBittorrent, который будет использоваться при запуске в контейнере. Вы можете найти допустимое значение для этой строки, просмотрев список часовых поясов базы данных tz в Википедии . Пример допустимого значения здесь — Europe/Moscow
.
DOWNLOADPATH
: Замените это значение на полный путь к месту, куда вы хотите загрузить файлы на вашем устройстве. Например, если мы хотим сохранить файлы в домашнем каталоге нашего пользователя, мы можем использовать что-то вроде /home/user/downloads
. Я буду изпользовать для этого жесткий диск, который используется в качестве файловой шары SMB а так же является внешним хранилищем для Nextcloud. Благодаря этому можно будет получить доступ к скачанным файлам как из локальной сети, так и за ее пределами.
QBT_WEBUI_PORT
: Порт по которому будет доступен веб-интерфейс, можете задать порт на свое усмотрение, так же необходимо его пробросить в разделе ports
Запускаем контейнер
Теперь, мы можем запустить контейнер qBittorrent с помощью следующей команды в терминале.
Мы не используем здесь опцию -d
, поскольку не хотим, чтобы Docker отсоединялся от терминала. Это нужно для того, чтоб получить временный пароль, который qBittorrent генерирует при запуске.
docker compose up
После запуска контейнера qBittorrent в терминале должен появиться следующий текст.
qbittorrent-nox | Веб-интерфейс скоро запустится после внутренней подготовки. Пожалуйста, подождите…
qbittorrent-nox |
qbittorrent-nox | ******** Информация ********
qbittorrent-nox | Войдите в веб-интерфейс для управления qBittorrent: http://localhost:8181
qbittorrent-nox |
qbittorrent-nox | Имя администратора веб-интерфейса: admin
qbittorrent-nox | Пароль администратора веб-интерфейса не был установлен. Для этого сеанса представлен временный пароль: NnvS96u8K
qbittorrent-nox | Необходимо задать собственный пароль в настройках программы.
Запишите временный пароль, так как он понадобится вам для первого доступа к веб-интерфейсу.
После того как скопировали временный пароль, открываем Web интерфейс по адресу http://YOUR-IP:8181
и вводим имя пользователя по умолчанию admin
, а пароль — тот, который был сгенерирован и показан в терминале ранее.
После первого входа в qBittorrent необходимо установить пароль, в противном случае ваш Docker-контейнер будет генерировать новый пароль при каждом запуске.
Чтобы начать установку пароля, нажмите на значок шестеренки на панели задач. Открыв страницу настроек, вам нужно будет перейти на вкладку Веб-интерфейс
. Находясь на вкладке Веб-интерфейс
, прокрутите страницу вниз, пока не увидите заголовок Аутентификация
, здесь вы можете сменить сразу имя пользователя и пароль. Для применения изменений нажмите кнопку сохранить.
Если по какой- то причине вы забыли пароль от веб-интерфейса, то откройте config файл в любом текстовом редакторе, например
sudo nano ~/qb/config/qBittorrent/config/qBittorrent.conf
Найдите строку WebUI\Password_PBKDF2
и полностью удалите ее.
Запуск qBittorent в фоновом режиме
Установив пароль для учетной записи администратора, вы можете остановить запуск контейнера в своем терминале. Чтобы остановить контейнер, нажмите CTRL+C
при открытом терминале.
Теперь мы можем снова запустить qBittorrent, но на этот раз с помощью опции -d
.
docker compose up -d
Обновление Docker-контейнера qBittorrent
Одним из преимуществ запуска qBittorrent через контейнер Docker является то, что обновление программного обеспечения сводится к выполнению нескольких команд.
К концу следующих шагов у вас будет установлена последняя версия.
Чтобы обновить наш Docker-контейнер qBittorrent, нам необходимо перейти в каталог, в который мы записали файл docker-compose.yml
Как только мы окажемся в нужном каталоге, мы можем приказать Docker загрузить последнюю версию контейнера qBittorrent.
docker compose pull
- Несмотря на то, что мы загрузили новую версию контейнера, Docker начнет использовать ее только в том случае, если мы дадим ему команду начать работу заново.
При запуске стека Compose Docker обнаружит новую версию контейнера qBittorrent и перейдет к ней.
docker compose up -d
Итог
В итоге мы получаем торрент клиент, которым можем пользоваться как в локальной сети так и за ее пределами. Вы можете освободить свой рабочий ПК от скачивания торрентов, а так же запустить загрузку торрента находясь вне дома, чтобы по приходу домой не загружать канал и не тратить время на ожидание скачивания торрента. Так же при использовании Nextcloud вы можете получить доступ к скачанным файлам, если к примеру в месте где вы находитесь, доступ к торрентам ограничен.
P.S.
Для удобства использования qBittorrent на мобильном устройстве существуют мобильные приложения, например я использую qBittorrent Remote Lite