jxxghp / MoviePilot

NAS媒体库自动化管理工具
https://wiki.movie-pilot.org
GNU General Public License v3.0
6.48k stars 778 forks source link

连接qbittorrent容器后下载报错 #2254

Closed KyQiao closed 4 months ago

KyQiao commented 4 months ago

确认

当前程序版本

v1.9.2

运行环境

Docker

问题类型

主程序运行问题

问题描述

你好,我使用qbittorrent作为默认下载器,在本地单独开了容器。在下载种子时,MP能正常把种子送到qb中,但是qb下载时会报错:

文件错误警报。Torrent:“XXX”。文件:“/media/tv-show/XXX.nfo”。原因:“XXX mkdir (/media/tv-show/XXX.nfo) error: Read-only file system”

在配置容器时,puid pgid 均为1000,与volume及其下的目录权限一致。docker-compse.yml 如下:

volumes:
    - '/mnt/sda1/qbit/downloads:/media'
    - '/root/code/moviepilot/config:/config'
    - '/root/code/moviepilot/core:/moviepilot/.cache/ms-playwright'
    - '/var/run/docker.sock:/var/run/docker.sock:ro'
environment:
            - 'PUID=1000'
            - 'PGID=1000'  

MP中下载目录如下: 图片

MP的日志没有报错。

发生问题时系统日志和配置文件

【INFO】2024-06-02 17:41:11,891 - transfer.py - 没有获取到已完成的下载任务
【INFO】2024-06-02 17:41:11,886 - transfer.py - 开始执行下载器文件转移 ...
【INFO】2024-06-02 17:37:18,104 - command.py - 处理事件:download.added - []
【INFO】2024-06-02 17:37:18,096 - command.py - 处理事件:notice.message - []
XXX userid=None
Hit&Run:是
做种数:2
发布时间:2024-06-02 14:42:33
种子:XXX
大小:105.33G
质量: BluRay 1080p
站点:冰淇淋
【INFO】2024-06-02 17:37:18,094 - chain - 发送消息:channel=None,title=XXX (2015) S01-S05 开始下载, text=用户:admin
Mirecle commented 4 months ago

将 qb docker 容器 的puid 和 pgid 设为0可以解决这个问题。 qb 下载器的权限不够

KyQiao commented 4 months ago

将 qb docker 容器 的puid 和 pgid 设为0可以解决这个问题。 qb 下载器的权限不够

你好, 我试了一下,还是不行。我把qb 和 mp 的docker-compose.yml 都贴出来。

qb

services:
  qbittorrent-nox:
    # for debugging
    #cap_add:
      #- SYS_PTRACE
    container_name: qbittorrent-nox
    environment:
      #- PAGID=10000
      - PGID=0
      - PUID=0
      - QBT_EULA=${QBT_EULA}
      - QBT_VERSION=${QBT_VERSION}
      - QBT_WEBUI_PORT=${QBT_WEBUI_PORT}
      #- TZ=UTC
      #- UMASK=022
    image: qbittorrentofficial/qbittorrent-nox:${QBT_VERSION}
    ports:
      # for bittorrent traffic
      - 6881:6881/tcp
      - 6881:6881/udp
      # for WebUI
      - ${QBT_WEBUI_PORT}:${QBT_WEBUI_PORT}/tcp
    read_only: true
    stop_grace_period: 30m
    tmpfs:
      - /tmp
    tty: true
    volumes:
      - ${QBT_CONFIG_PATH}:/config
      - ${QBT_DOWNLOADS_PATH}:/downloads

qb环境变量

QBT_EULA=accept
QBT_VERSION=latest
QBT_WEBUI_PORT=8080
QBT_CONFIG_PATH="/mnt/sda1/qbit/config"
QBT_DOWNLOADS_PATH="/mnt/sda1/qbit/downloads"

mp 隐去token

version: '3.3'
services:

    moviepilot:
        stdin_open: true
        tty: true
        container_name: moviepilot
        hostname: moviepilot
        networks:
            - moviepilot
        ports:
            - target: 3000
              published: 3000
              protocol: tcp
        volumes:
            - '/mnt/sda1/qbit/downloads:/media'
            - '/root/code/moviepilot/config:/config'
            - '/root/code/moviepilot/core:/moviepilot/.cache/ms-playwright'
            - '/var/run/docker.sock:/var/run/docker.sock:ro'

        environment:
            - 'NGINX_PORT=3000'
            - 'PORT=3111'
            - 'PUID=1000'
            - 'PGID=1000'
            - 'UMASK=000'
            # 时区
            - 'TZ=Asia/Shanghai'
            - 'MOVIEPILOT_AUTO_UPDATE=true'
            - 'SUPERUSER=admin'
            - 'BIG_MEMORY_MODE=true'
            - 'DOH_ENABLE=true'
            - 'META_CACHE_EXPIRE='
            - 'DEV=false'
            - 'DEBUG=false'
            - 'AUTO_UPDATE_RESOURCE=true'
            - 'TMDB_API_DOMAIN=api.themoviedb.org'
            - 'TMDB_IMAGE_DOMAIN=image.tmdb.org'
            - 'WALLPAPER=tmdb'
            - 'RECOGNIZE_SOURCE=themoviedb'
            - 'FANART_ENABLE=true'
            - 'SCRAP_SOURCE=themoviedb'
            - 'SCRAP_FOLLOW_TMDB=true'
            - 'AUTO_DOWNLOAD_USER=all'
            - 'OCR_HOST=https://movie-pilot.org'
            - 'DOWNLOAD_SUBTITLE=true'
            - 'MOVIE_RENAME_FORMAT={{title}}{% if year %} ({{year}}){% endif %}/{{title}}{% if year %} ({{year}}){% endif %}{% if part %}-{{part}}{% endif %}{% if videoFormat %} - {{videoFormat}}{% endif %}{{fileExt}}'
            - 'TV_RENAME_FORMAT={{title}}{% if year %} ({{year}}){% endif %}/Season {{season}}/{{title}} - {{season_episode}}{% if part %}-{{part}}{% endif %}{% if episode %} - 第 {{episode}} 集{% endif %}{{fileExt}}'
            - 'PLUGIN_MARKET=https://github.com/jxxghp/MoviePilot-Plugins'

        logging:
            driver: json-file
            options:
                max-size: 5m
        restart: always
        image: jxxghp/moviepilot:latest

networks:
  moviepilot:
    name: moviepilot
Mirecle commented 4 months ago
        - 'PUID=1000'
        - 'PGID=1000'
        你把mp 的权限也抬高到0,0试试
KyQiao commented 4 months ago
        - 'PUID=1000'
        - 'PGID=1000'
        你把mp 的权限也抬高到0,0试试

试过了,还是不行. 权限应该是给够了。 图片 图片