* 4.1.7 * chore(docs): Sync wiki to docs [skip-cd] * Bump flake8 from 7.0.0 to 7.1.0 (#585) Bumps [flake8](https://github.com/pycqa/flake8) from 7.0.0 to 7.1.0. - [Commits](https://github.com/pycqa/flake8/compare/7.0.0...7.1.0) --- updated-dependencies: - dependency-name: flake8 dependency-type: direct:development update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * Bump docker/build-push-action from 5 to 6 (#588) * chore(docs): Sync wiki to docs [skip-cd] * fix(unregistered): Ignore 520 (#592) * fix: max vs min seeding time check (#596) * fix: max vs min seeding time check Allow max_seeding_time to be unlimited (-1) even if a min_seeding_time is set * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * fix pre-commit test * fix: check tracker status in udp & wss as well (#586) * fix: check tracker status in udp & wss as well * bump VERSION --------- Co-authored-by: bobokun <12660469+bobokun@users.noreply.github.com> * [pre-commit.ci] pre-commit autoupdate (#584) updates: - [github.com/hhatto/autopep8: v2.2.0 → v2.3.1](https://github.com/hhatto/autopep8/compare/v2.2.0...v2.3.1) - [github.com/asottile/pyupgrade: v3.15.2 → v3.16.0](https://github.com/asottile/pyupgrade/compare/v3.15.2...v3.16.0) - [github.com/PyCQA/flake8: 7.0.0 → 7.1.0](https://github.com/PyCQA/flake8/compare/7.0.0...7.1.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * Fixes #595 to use BHD deleted reason list instead of API * Fixes #591 [FR]: Logging header doesn't get logged for every run * minor fixes in #591 * Adds deprecated message for bhd attribute in config * Fix min_seeding_time tag removal when max_seeding_time is -1 (#598) * Update share_limits.py to fix #590 --------- Co-authored-by: bobokun <12660469+bobokun@users.noreply.github.com> * Adds logging to mover script * Fixes [FR]: Remove orphaned without moving to orphaned_dir #590 * Fixes bug in printing schedule mode when run is True * Fix bug in Use BHD list of reasons instead of API #595 * Add additional BHD deletion reason #595 * Fix bug in #595 when status contains optional message * Update mover.py: add optional arg --status-filter to allow fine tune which torrents to pauseUpdate mover.py: add optional arg --status-filter to allow fine tune which torrents to pause (#599) * Update mover.py * [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci * Update mover.py: making the default behavior to only move `completed` torrents This will leave 1) unfinished files 2) actively seeding files in `downloading` torrents in cache. This helps to keep write-heavy operation on Cache, not on hard drive. Change this to "all" if you want this to always move everything every time. * minor fixes in help description --------- Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: bobokun <12660469+bobokun@users.noreply.github.com> * modify noHL threshold to address false positives * Add additional BHD deletion reason #595 * Bump dependabot/fetch-metadata from 2.1.0 to 2.2.0 (#601) Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 2.1.0 to 2.2.0. - [Release notes](https://github.com/dependabot/fetch-metadata/releases) - [Commits](https://github.com/dependabot/fetch-metadata/compare/v2.1.0...v2.2.0) --- updated-dependencies: - dependency-name: dependabot/fetch-metadata dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> * 4.1.7 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: Actionbot <actions@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: bakerboy448 <55419169+bakerboy448@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Amos (lflare) <me@amosng.com> Co-authored-by: ineednewpajamas <73252768+ineednewpajamas@users.noreply.github.com> Co-authored-by: Tony <5747393+convexshiba@users.noreply.github.com>
3.2 KiB
Docker Installation
A simple Dockerfile is available in this repo if you'd like to build it yourself.
The official build on github is available here:
docker run -it -v <PATH_TO_CONFIG>:/config:rw ghcr.io/stuffanthings/qbit_manage:latest
-
The -v <PATH_TO_CONFIG>:/config:rw mounts the location you choose as a persistent volume to store your files.
- Change <PATH_TO_CONFIG> to a folder where your config.yml and other files are.
- The docker image defaults to running the config named config.yml in your persistent volume.
- Use quotes around the whole thing if your path has spaces i.e. -v "<PATH_TO_CONFIG>:/config:rw"
-
Fill out your location for your downloads downloads folder (
Root_Dir
).- qbit_manage needs to be able to view all torrents the way that your qbittorrent views them.
- Example: If you have qbittorrent mapped to
/mnt/user/data/:/data
This means that you MUST have qbit_managed mapped the same way. - Furthermore, the config file must map the root directory you wish to monitor. This means that in our example of
/data
(which is how qbittorrent views the torrents) that if in your/data
directory you drill down to/torrents
that you'll need to update your config file to/data/torrents
- Example: If you have qbittorrent mapped to
- This could be different depending on your specific setup.
- The key takeaways are
- Both qbit_manage needs to have the same mappings as qbittorrent
- The config file needs to drill down (if required) further to the desired root dir.
- qbit_manage needs to be able to view all torrents the way that your qbittorrent views them.
-
remote_dir
: is not required and can be commented out with#
Please see Commands for a list of arguments and docker environment variables.
Here is an example of a docker compose
version: "3.7"
services:
qbit_manage:
container_name: qbit_manage
image: ghcr.io/stuffanthings/qbit_manage:latest
volumes:
- /mnt/user/appdata/qbit_manage/:/config:rw
- /mnt/user/data/torrents/:/data/torrents:rw
- /mnt/user/appdata/qbittorrent/:/qbittorrent/:ro
environment:
- QBT_RUN=false
- QBT_SCHEDULE=1440
- QBT_CONFIG=config.yml
- QBT_LOGFILE=activity.log
- QBT_CROSS_SEED=false
- QBT_RECHECK=false
- QBT_CAT_UPDATE=false
- QBT_TAG_UPDATE=false
- QBT_REM_UNREGISTERED=false
- QBT_REM_ORPHANED=false
- QBT_TAG_TRACKER_ERROR=false
- QBT_TAG_NOHARDLINKS=false
- QBT_SHARE_LIMITS=false
- QBT_SKIP_CLEANUP=false
- QBT_DRY_RUN=false
- QBT_LOG_LEVEL=INFO
- QBT_DIVIDER==
- QBT_WIDTH=100
restart: on-failure:2
You will also need to define not just the config volume but the volume to your torrents, this is in order to use the recycling bin, remove orphans and the no hard link options
Here we have /mnt/user/data/torrents/
mapped to /data/torrents/
furthermore in the config file associated with it the root_dir is mapped to /data/torrents/
We also have /mnt/user/appdata/qbittorrent/
mapped to /qbittorrent
and in the config file we associated torrents_dir to /qbittorrent/data/BT_backup
to use the save_torrents functionality