Giter Club home page Giter Club logo

docker-deluge's Introduction

linuxserver.io

Blog Discord Discourse Fleet GitHub Open Collective

The LinuxServer.io team brings you another container release featuring:

  • regular and timely application updates
  • easy user mappings (PGID, PUID)
  • custom base image with s6 overlay
  • weekly base OS updates with common layers across the entire LinuxServer.io ecosystem to minimise space usage, down time and bandwidth
  • regular security updates

Find us at:

  • Blog - all the things you can do with our containers including How-To guides, opinions and much more!
  • Discord - realtime support / chat with the community and the team.
  • Discourse - post on our community forum.
  • Fleet - an online web interface which displays all of our maintained images.
  • GitHub - view the source for all of our repositories.
  • Open Collective - please consider helping us by either donating or contributing to our budget

Scarf.io pulls GitHub Stars GitHub Release GitHub Package Repository GitLab Container Registry Quay.io Docker Pulls Docker Stars Jenkins Build LSIO CI

Deluge is a lightweight, Free Software, cross-platform BitTorrent client.

  • Full Encryption
  • WebUI
  • Plugin System
  • Much more...

deluge

Supported Architectures

We utilise the docker manifest for multi-platform awareness. More information is available from docker here and our announcement here.

Simply pulling lscr.io/linuxserver/deluge:latest should retrieve the correct image for your arch, but you can also pull specific arch images via tags.

The architectures supported by this image are:

Architecture Available Tag
x86-64 amd64-<version tag>
arm64 arm64v8-<version tag>
armhf

Application Setup

The admin interface is available at http://SERVER-IP:8112 with a default user/password of admin/deluge.

To change the password (recommended) log in to the web interface and go to Preferences->Interface->Password.

Change the inbound port to 6881 (or whichever port you've mapped for the container) under Preferences->Network, otherwise random ports will be used.

Usage

To help you get started creating a container from this image you can either use docker-compose or the docker cli.

docker-compose (recommended, click here for more info)

---
services:
  deluge:
    image: lscr.io/linuxserver/deluge:latest
    container_name: deluge
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Etc/UTC
      - DELUGE_LOGLEVEL=error #optional
    volumes:
      - /path/to/deluge/config:/config
      - /path/to/downloads:/downloads
    ports:
      - 8112:8112
      - 6881:6881
      - 6881:6881/udp
      - 58846:58846 #optional
    restart: unless-stopped
docker run -d \
  --name=deluge \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Etc/UTC \
  -e DELUGE_LOGLEVEL=error `#optional` \
  -p 8112:8112 \
  -p 6881:6881 \
  -p 6881:6881/udp \
  -p 58846:58846 `#optional` \
  -v /path/to/deluge/config:/config \
  -v /path/to/downloads:/downloads \
  --restart unless-stopped \
  lscr.io/linuxserver/deluge:latest

Parameters

Containers are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate <external>:<internal> respectively. For example, -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080 outside the container.

Parameter Function
-p 8112 Port for webui
-p 6881 Inbound torrent traffic (See App Setup)
-p 6881/udp Inbound torrent traffic (See App Setup)
-p 58846 Default deluged port for thin client connectivity
-e PUID=1000 for UserID - see below for explanation
-e PGID=1000 for GroupID - see below for explanation
-e TZ=Etc/UTC specify a timezone to use, see this list.
-e DELUGE_LOGLEVEL=error set the loglevel output when running Deluge, default is info for deluged and warning for delgued-web
-v /config deluge configs
-v /downloads torrent download directory

Environment variables from files (Docker secrets)

You can set any environment variable from a file by using a special prepend FILE__.

As an example:

-e FILE__MYVAR=/run/secrets/mysecretvariable

Will set the environment variable MYVAR based on the contents of the /run/secrets/mysecretvariable file.

Umask for running applications

For all of our images we provide the ability to override the default umask settings for services started within the containers using the optional -e UMASK=022 setting. Keep in mind umask is not chmod it subtracts from permissions based on it's value it does not add. Please read up here before asking for support.

User / Group Identifiers

When using volumes (-v flags), permissions issues can arise between the host OS and the container, we avoid this issue by allowing you to specify the user PUID and group PGID.

Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.

In this instance PUID=1000 and PGID=1000, to find yours use id your_user as below:

id your_user

Example output:

uid=1000(your_user) gid=1000(your_user) groups=1000(your_user)

Docker Mods

Docker Mods Docker Universal Mods

We publish various Docker Mods to enable additional functionality within the containers. The list of Mods available for this image (if any) as well as universal mods that can be applied to any one of our images can be accessed via the dynamic badges above.

Support Info

  • Shell access whilst the container is running:

    docker exec -it deluge /bin/bash
  • To monitor the logs of the container in realtime:

    docker logs -f deluge
  • Container version number:

    docker inspect -f '{{ index .Config.Labels "build_version" }}' deluge
  • Image version number:

    docker inspect -f '{{ index .Config.Labels "build_version" }}' lscr.io/linuxserver/deluge:latest

Updating Info

Most of our images are static, versioned, and require an image update and container recreation to update the app inside. With some exceptions (noted in the relevant readme.md), we do not recommend or support updating apps inside the container. Please consult the Application Setup section above to see if it is recommended for the image.

Below are the instructions for updating containers:

Via Docker Compose

  • Update images:

    • All images:

      docker-compose pull
    • Single image:

      docker-compose pull deluge
  • Update containers:

    • All containers:

      docker-compose up -d
    • Single container:

      docker-compose up -d deluge
  • You can also remove the old dangling images:

    docker image prune

Via Docker Run

  • Update the image:

    docker pull lscr.io/linuxserver/deluge:latest
  • Stop the running container:

    docker stop deluge
  • Delete the container:

    docker rm deluge
  • Recreate a new container with the same docker run parameters as instructed above (if mapped correctly to a host folder, your /config folder and settings will be preserved)

  • You can also remove the old dangling images:

    docker image prune

Image Update Notifications - Diun (Docker Image Update Notifier)

tip: We recommend Diun for update notifications. Other tools that automatically update containers unattended are not recommended or supported.

Building locally

If you want to make local modifications to these images for development purposes or just to customize the logic:

git clone https://github.com/linuxserver/docker-deluge.git
cd docker-deluge
docker build \
  --no-cache \
  --pull \
  -t lscr.io/linuxserver/deluge:latest .

The ARM variants can be built on x86_64 hardware using multiarch/qemu-user-static

docker run --rm --privileged multiarch/qemu-user-static:register --reset

Once registered you can define the dockerfile to use with -f Dockerfile.aarch64.

Versions

  • 26.12.23: - Replace source for GeoIP database.
  • 07.12.23: - Add optional port 58846 to readme for thin client connectivity.
  • 07.10.23: - Install unrar from linuxserver repo.
  • 10.08.23: - Bump unrar to 6.2.10.
  • 30.06.23: - Bump unrar to 6.2.8, deprecate armhf as per https://www.linuxserver.io/armhf.
  • 29.11.22: - Restore geoip using py3-geoip as an interim measure.
  • 24.11.22: - Remove GeoIP packages as geoip will not build under Py 3.11 and Deluge still doesn't support geoip2.
  • 22.11.22: - Update GeoIP URL for new IPFS domain.
  • 29.08.22: - Rebase to Alpine Edge again to follow latest releases.
  • 12.08.22: - Bump unrar to 6.1.7.
  • 16.06.22: - Rebase to Alpine 3.16 from edge.
  • 22.02.22: - Rebase to Alpine, config on first startup, add GeoIP.
  • 15.01.22: - Rebase to Focal.
  • 07.06.21: - Remove host networking from readme examples
  • 23.01.21: - Deprecate UMASK_SET in favor of UMASK in baseimage, see above for more information.
  • 09.05.19: - Add python3 requests and future modules.
  • 24.08.19: - Add ability to set LogLevel for Deluge.
  • 09.06.19: - Update to 2.x using deluge ppa.
  • 02.05.19: - Install full version of 7zip.
  • 23.03.19: - Switching to new Base images, shift to arm32v7 tag.
  • 15.11.18: - Add deluge-console.
  • 11.11.18: - Rebase to Ubuntu Bionic, add pipeline multiarch logic.
  • 09.04.18: - update to libressl2.7-libssl.
  • 29.03.18: - Rebase to alpine edge.
  • 07.12.17: - Rebase to alpine 3.7.
  • 20.11.17: - Change libressl2.6-libssl repo.
  • 01.07.17: - Add curl package.
  • 26.05.17: - Rebase to alpine 3.6.
  • 29.04.17: - Add variable for user defined umask.
  • 28.04.17: - update to libressl2.5-libssl.
  • 28.12.16: - Rebase to alpine 3.5 baseimage.
  • 17.11.16: - Rebase to edge baseimage.
  • 13.10.16: - Switch to libressl as openssl deprecated from alpine linux and deluge dependency no longer installs
  • 30.09.16: - Fix umask.
  • 09.09.16: - Add layer badges to README.
  • 30.08.16: - Use pip packages for some critical dependencies.
  • 28.08.16: - Add badges to README.
  • 15.08.16: - Rebase to alpine linux.
  • 09.11.15: - Add unrar and unzip
  • 15.10.15: - Initial Release.

docker-deluge's People

Contributors

aptalca avatar blueshiftlabs avatar drizuid avatar homerr avatar j0nnymoe avatar jkaberg avatar linuxserver-ci avatar nemchik avatar pecigonzalo avatar prashker avatar roxedus avatar sparklyballs avatar thelamer avatar thespad avatar tobbenb avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

docker-deluge's Issues

Downloaded files have null permissions outside container

Host OS: Ubuntu 18.04

 docker create --name=deluge \
  --net=host \
  -e PUID=1000 -e PGID=1000 \
  -e TZ='America/Los_Angeles' -e UMASK_SET=000 \
  -v $HOME/.deluge:/config \
  -v /torrent2:/downloads \
  --restart unless-stopped \
  linuxserver/deluge

/torrent2 is an NFS mount on the docker host. It is mounted in async mode if this matters.

When a torrent gets added/picked up from blackhole, deluge creates the file. Inside the container, the permissions are set accordingly with the umask (000 in my case, so files should be 777).

HOWEVER, outside the container on the host ubuntu system, the files in /torrent2 have null permissions, i.e. mode 000.

Inside container:

-rwxrwxrwx  1 abc  abc     377487360 Nov 28 09:55  some-file.mkv*

Outside container on host:

----------  1 yacn yacn 360M Nov 28 17:55  some-file.mkv

There's nothing interesting/relevant in docker logs, just entries of my web browser talking to the daemon.

I'm not using symlinks on any of the volume mounts.

Manually chmod-ing the files on the host to 777 and stop/starting the container didn't do anything.

When I added a torrent that creates a folder containing it's files, it had the same permission issue. However, I set the correct permissions on the host and deluge noticed and started downloading w/o issue.

I also tried re-creating the container in privileged mode w/ --privileged -- the torrent downloads fine but the resulting files still have null permissions outside the container.

Was doing a test and ran ls -l on /torrent2 and noticed the permissions seem to flap between the correct permissions and null permissions:

yacn@nuc8i5:~$ date; ll /torrent2
Wed Nov 28 19:03:10 UTC 2018
total 39G
drwxrwxrwx 22 yacn yacn  36K Nov 28 19:01  ./
drwxr-xr-x 27 root  root  4.0K Nov 28 00:37  ../
drwxrwxr-x  2 yacn yacn 4.0K Nov 28 18:53  blackhole/
-rwxrwxrwx  2 yacn yacn 431M Nov 28 18:55  the-file.mkv*
drwxrwxr-x 14 yacn yacn  12K Nov 28 18:55  complete/
yacn@nuc8i5:~$ date; ll /torrent2
Wed Nov 28 19:03:12 UTC 2018
total 39G
drwxrwxrwx 22 yacn yacn  36K Nov 28 19:01  ./
drwxr-xr-x 27 root  root  4.0K Nov 28 00:37  ../
drwxrwxr-x  2 yacn yacn 4.0K Nov 28 18:53  blackhole/
----------  2 yacn yacn 431M Nov 28 18:55  the-file.mkv
drwxrwxr-x 14 yacn yacn  12K Nov 28 18:55  complete/

Unable to activate Label plugin

When attempting to enable the Label plugin with the Deluge WebUI, clicking Apply and close does nothing. When I open the same menu, the Label plugin has reverted to deselected/disabled.

When I look at Docker's logs, this is what I see:

[ERROR   ] 16:47:19 json_api:240 Error calling method `web.upload_plugin`
[ERROR   ] 16:47:19 json_api:241 [Errno 21] Is a directory: u'/config/plugins/'
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/deluge/ui/web/json_api.py", line 232, in _handle_request
    result = self._exec_local(method, params, request)
  File "/usr/lib/python2.7/dist-packages/deluge/ui/web/json_api.py", line 199, in _exec_local
    return meth(*params)
  File "/usr/lib/python2.7/dist-packages/deluge/ui/web/json_api.py", line 1000, in upload_plugin
    shutil.copyfile(path, os.path.join(get_config_dir(), "plugins", filename))
  File "/usr/lib/python2.7/shutil.py", line 97, in copyfile
    with open(dst, 'wb') as fdst:
IOError: [Errno 21] Is a directory: u'/config/plugins/'

OS: Rancher OS 1.5

docker create \
  --name=Deluge \
  --net=host \
  -e PUID=1100 \
  -e PGID=1100 \
  -e TZ=America/Phoenix \
  -v /var/lib/rancher/deluge:/config \
  -v /home/rancher/Downloads:/downloads \
  --restart unless-stopped \
  linuxserver/deluge

Permission denied

I'm trying to set up Deluge in Docker on Synology DSM 6.1. I've set up the TZ, PGUID and PUID.

env

The user has been specifically created for docker and is in the Admins group (ID 101), and the user ID is 1029.
Docker has been configured for the file paths:

volume

Deluge has been configured as follows:

settings

And the error message I'm seeing is:

error

Using bridge instead of host network

This is more a question than an issue, what is the reason for to have as a requirement the host network?
i see the Dockerfile expose 4 ports, couldn't i just simply map each one of then? or use -P flag?

Thanks, team linuxserver.io

Synology LinuxServer/Deluge - Permission Denied

Hello Linuxserver.io and users.

I just downloaded Deluge image, and set it up in Docker, on my Synology DS1515+ with some of the other Docker images from LinuxServer, including Sonarr and CouchPotato. Which works just fine.
But i got some problems with the Deluge, when i'm trying to download something trough Deluge, i just got a "Permission Denied" error, every time i'm trying to download.

Sorry about the language, in my Synology setup, I'm from Denmark :)

deluge1

deluge2

deluge3

Default path for downloads within container is /root/Downloads

The default settings of the Deluge installation within the container specify /root/Downloads as the path for downloaded torrents, causing permission errors, and making the mounting of a volume in /downloads pointless.

Host OS: Ubuntu 16.04.3
Main user puid/guid = 1000/1000

linuxserver.io

Thanks, team linuxserver.io

"Failed to upload torrent" via web ui in Chrome but works in firefox

In Chrome (latest version and also in canary)

linuxserver.io

Host: Arch Linux
Docker Compose:

deluge:
    container_name: deluge
    image: linuxserver/deluge
    network_mode: host
    environment: 
      - PUID=1000
      - PGID=974
      - TZ=America/New_York
      - UMASK_SET=022
    volumes: 
      - "/MediaDownloads:/downloads"
      - "/home/adriano/Code/deluge/config:/config"

Logs:

➜ docker logs -f deluge
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    974
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[INFO    ] 13:18:27 configmanager:70 Setting config directory to: /config
[INFO    ] 13:18:27 ui:124 Deluge ui 1.3.15
[INFO    ] 13:18:27 ui:127 Starting web ui..
[INFO    ] 13:18:27 server:666 Starting server in PID 213.
[INFO    ] 13:18:27 server:679 Serving on 0.0.0.0:8112 view at http://0.0.0.0:8112
[INFO    ] 13:18:30 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:18:30 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:05 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:05 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:07 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:07 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 pluginmanagerbase:158 Plugin Extractor enabled..
[INFO    ] 13:19:07 pluginmanager:108 'WebUi' plugin contains no WebUI code, ignoring WebUI enable call.
[INFO    ] 13:19:07 pluginmanagerbase:158 Plugin Label enabled..

Mention if you're using symlinks on any of the volume mounts:
Volumes, I think...?

You'll see in the above that my PGID is set to 974 but it also does not work with 1000 nor 1001. Here is the output of id [username]:

➜ id adriano
uid=1000(adriano) gid=1001(adriano) groups=1001(adriano),998(wheel),991(lp),90(network),98(power),1000(autologin),974(docker)

Unable to download to directories outside /downloads

HOST OS: OpenMediaVault 4

When I try to download a torrent to a different path than /downloads, the torrent is stuck at 0%.

I have given Deluge permission to access the other folders I'm trying to download to.

[Feature request] Allow passing interface for deluge-web

deluge-web is started by default on interface 0.0.0.0 which poses a security risk. The option -i exists and using an environment variable could be passed to the service in init.d.

The current workaround is to mount a volume which contains a modified [/etc/services.d/deluge-web/run] that uses the option.

Thanks for the container!

twisted.python.failure.Failure OpenSSL.SSL.Error if add URL

I can add the torrent file (but i dont see anywhere on the filesystem), or add the URL but the content behind the torrent file (files folders) arent visible so I cant finish the adding torrent procedure (The ADD button doesnt work the Files and Option tab are grayed out)
In case of adding a torrent file, there arent any error or warning
In case of adding torrent URL, the error is below:

Provide a general summary of the issue in the Title above

Ubuntu 18.04

Docker log output, docker log
[WARNING ][deluge.httpdownloader :315 ] Error occurred downloading file from "https://URL": [<twisted.python.failure.Failure OpenSSL.SSL.Error: [('SSL routines', 'ssl3_read_bytes', 'sslv3 alert handshake failure')]>]
21:14:08 [ERROR ][deluge.ui.web.json_api :675 ] Failed to add torrent from url https://URL
21:14:08 [ERROR ][deluge.ui.web.json_api :185 ] [Failure instance: Traceback (failure with no frames): <class 'twisted.web._newclient.ResponseNeverReceived'>: [<twisted.python.failure.Failure OpenSSL.SSL.Error: [('SSL routines', 'ssl3_read_bytes', 'sslv3 alert handshake failure')]>]

docker-compose file
The network is bridge mode (custom network)
version: "2"
services:
deluge:
image: linuxserver/deluge
container_name: deluge
hostname: xxxx.xxxxx.xxxx.xx
network_mode: dmznet1
dns:
- xxx.xxx.xxx.xxx
ports:
- 8112:8112/tcp
environment:
- PUID=1003
- PGID=1002
- UMASK_SET=022
- TZ=Europe/Budapest
volumes:
- /ddata/deluge/config:/config
- /mnt/nfsmedia/plex/data:/downloads
labels:
- com.centurylinklabs.watchtower.enable=true
- traefik.backend=deluge
- traefik.frontend.rule=Host:xxxx.xxxxx.xxxx.xx
- traefik.docker.network=dmznet1
- traefik.port=8112
restart: unless-stopped

Thanks, team linuxserver.io

"Failed to upload torrent" via web ui in Chrome but works in firefox

In Chrome (latest version and also in canary) (on either arch linux or macOS), the web ui fails to upload torrent files. It does however, work in firefox on both of the above OS'. I think it may have something to do with Chrome's aggressive new SSL policies?


linuxserver.io

Host: Arch Linux
Docker Compose:

deluge:
    container_name: deluge
    image: linuxserver/deluge
    network_mode: host
    environment: 
      - PUID=1000
      - PGID=974
      - TZ=America/New_York
      - UMASK_SET=022
    volumes: 
      - "/MediaDownloads:/downloads"
      - "/home/adriano/Code/deluge/config:/config"

Logs:

➜ docker logs -f deluge
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    974
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[INFO    ] 13:18:27 configmanager:70 Setting config directory to: /config
[INFO    ] 13:18:27 ui:124 Deluge ui 1.3.15
[INFO    ] 13:18:27 ui:127 Starting web ui..
[INFO    ] 13:18:27 server:666 Starting server in PID 213.
[INFO    ] 13:18:27 server:679 Serving on 0.0.0.0:8112 view at http://0.0.0.0:8112
[INFO    ] 13:18:30 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:18:30 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:18:30 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:05 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:05 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:05 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:07 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection was closed cleanly.
[INFO    ] 13:19:07 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 13:19:07 pluginmanagerbase:158 Plugin Extractor enabled..
[INFO    ] 13:19:07 pluginmanagerbase:158 Plugin Label enabled..

Mention if you're using symlinks on any of the volume mounts:
Volumes, I think...?


You'll see in the above that my PGID is set to 974 but it also does not work with 1000 nor 1001. Here is the output of id [username]:

➜ id adriano
uid=1000(adriano) gid=1001(adriano) groups=1001(adriano),998(wheel),991(lp),90(network),98(power),1000(autologin),974(docker)

umask errors and extract plugin not working after latest update

Hi,

I'm running the x86 image with latest tag on Docker 18.09.7 on Debian Buster. I've been using deluge via this image for many months but after the last update a couple of days ago I noticed the following:

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \ 
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    999
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing... 
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-scripts: executing... 
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
./run: line 5: umask: `<': invalid symbolic mode operator
./run: line 5: umask: `<': invalid symbolic mode operator
[services.d] done.
04:25:32 [WARNING ][deluge.i18n.util           :83  ] IOError when loading translations: [Errno 2] No translation file found for domain: 'deluge'

Furthermore, in the deluge config directory a lot of .conf files have a .conf~ created. Also, the extractor plugin is no longer working. Even though, it's enabled, there is nothing in the logs relating to it other than the initial message "04:25:32 [INFO ][deluge.pluginmanagerbase :189 ] Plugin Extractor enabled...".

If I diff the extractor.conf and extractor.conf~ the differences seem only to be spacing and its similar for other files.

Any ideas would be really appreciated.

Allow Thin Client / add extra user

linuxserver.io

Suggestion

http://dev.deluge-torrent.org/wiki/UserGuide/ThinClient
It would be nice to have the thin client enabled by default or have a way to enable it easily. This allows clients to connect with the deluge program, not just the deluge web interface. There should be an option to add a user to the /config/auth file with 10 permission. for example seedbox:deluge:10
Additionally, the allow remote connections have to be enabled. this can be done with:

deluge-console "config -s allow_remote True"
deluge-console "config allow_remote"

or left default off because it can be enabled from the web interface too.

The ports that are already mapped should be enough for the thinclient.

What you think your suggestion brings to the project, or fixes with the project

Enabled ThinClient. Adds extra user option.

Thanks, team linuxserver.io

Default UMASK doesn't function properly

When using the default UMASK (022), I get the following permissions when files are created by the container:
User: ---
Group: -w-
Other: -w-

Setting -e UMASK_SET=644 fixes this issue.

Move Completed Downloads in Label Plugin non-functional

linuxserver.io

I've run into an issue where the 'move completed download' functionality for labels doesn't work in a docker container. I'm simply moving the complete download to a sub directory in the /download folder.

I've checked debug level logs and there is no error or warning. I've checked all the appropriate config files and again, nothing obvious going on. Frankly, deluge behaves as normal in every way, except when a download completes it simply will not move. I have to manually change the directory through the interface (which works).

I've tried deleting the container and image. Starting from scratch. The problem still occurs. I'm curious if this occurs also on other machines but don't have the facility to test.

Libreelec

PUID = 100 PGID= 65534

I'd prefer not to share due to sensitive information. Suffice to say though that there are 0 errors or warnings in the logs (even set to debug level).

No symlinks.

Thanks, team linuxserver.io

linuxserver/deluge latest broke webui

linuxserver.io

Thanks, team linuxserver.io

Hi all,
I've pull the docker linuxserver/deluge:latest (2019-06-09) and now the web access no longer works:

web.Server Traceback (most recent call last):
builtins.TypeError: must be str, not bytes
/usr/lib/python3/dist-packages/twisted/web/server.py:190 in process
189        try:
190            resrc = self.site.getResourceFor(self)
191            if resource._IEncodingResource.providedBy(resrc):
/usr/lib/python3/dist-packages/twisted/web/server.py:826 in getResourceFor
825        request.sitepath = copy.copy(request.prepath)
826        return resource.getChildForRequest(self.resource, request)
827
/usr/lib/python3/dist-packages/twisted/web/resource.py:98 in getChildForRequest
97        request.prepath.append(pathElement)
98        resource = resource.getChildWithDefault(pathElement, request)
99    return resource
/usr/lib/python3/dist-packages/deluge/ui/web/server.py:580 in getChildWithDefault
579        if base[0] != '/':
580            base = '/' + base
581
builtins.TypeError: must be str, not bytes

So I went back to the previous version:

docker inspect -f '{{ index .Config.Labels "build_version" }}' deluge
Linuxserver.io version:- 5b398f77-ls22 Build-date:- 2019-06-06T15:03:31-04:00

And everything started all over again, am I the only one in this case?

Thanks team.

Deluge not starting anymore after latest update

I leaving my log here but I don't know how to get debug logs?


| || () ___
| / __| | |/ _
| ** \ | | () |
|
|
/ ||**/
|
|

Brought to you by linuxserver.io
We do accept donations at:

https://www.linuxserver.io/donations

GID/UID

User uid: 99

User gid: 100

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[INFO ] 19:43:42 configmanager:70 Setting config directory to: /config
[INFO ] 19:43:42 ui:124 Deluge ui 1.3.13
[INFO ] 19:43:42 ui:127 Starting web ui..
[INFO ] 19:43:48 server:650 Starting server in PID 213.
[INFO ] 19:43:48 server:664 serving on 0.0.0.0:8112 view at http://127.0.0.1:8112
[INFO ] 19:44:05 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO ] 19:44:05 client:121 Connected to daemon at 127.0.0.1:58846..

Question about the required host network

Hi,

This is not so much an issue as a question : Why is it required to be on "host" network ?
When running this image with docker-compose and the linuxserver/letsencrypt image, the provided configuration for deluge in the letsencrypt image does not work because the deluge image is not a member of the network created by docker-compose.
Is the host mode required only because of the port forwarding ? Or is there another reason to that ?

Best regards and thank you so much for the hard work.

PUID Not working Synology Docker Container

Using deluge docker container on a Synology 1515+ running the latest DSM. I cannot get the PUID environment variable to work. PUID comes up as 0 no matter what I specify as PUID in the docker container environment tab. PGID appears to be working correctly. Thank you for your time!

Openssl error after newest update

linuxserver.io

Host OS:

Debian 9

docker-compose.yml

  deluge:
    container_name: deluge
    environment:
      - PGID=1000
      - PUID=1000
      - TZ=Canada/Eastern
    image: linuxserver/deluge
    network_mode: host
    restart: always
    volumes:
      - /srv/nfs/Downloads:/downloads
      - /srv/nfs/appdata/deluge:/config
      - /srv/nfs:/nfs

Docker log output:

Traceback (most recent call last):
   File "/usr/bin/deluge-web", line 11, in <module>
     load_entry_point('deluge==1.3.15', 'console_scripts', 'deluge-web')()
   File "/usr/lib/python2.7/site-packages/deluge/ui/web/web.py", line 144, in start
     web.start()
   File "/usr/lib/python2.7/site-packages/deluge/ui/web/web.py", line 110, in start
     import server
   File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 50, in <module>
     from OpenSSL.crypto import FILETYPE_PEM
   File "/usr/lib/python2.7/site-packages/OpenSSL/__init__.py", line 8, in <module>
     from OpenSSL import crypto, SSL
   File "/usr/lib/python2.7/site-packages/OpenSSL/crypto.py", line 16, in <module>
     from OpenSSL._util import (
   File "/usr/lib/python2.7/site-packages/OpenSSL/_util.py", line 6, in <module>
     from cryptography.hazmat.bindings.openssl.binding import Binding
   File "/usr/lib/python2.7/site-packages/cryptography/hazmat/bindings/openssl/binding.py", line 13, in <module>
     from cryptography.hazmat.bindings._openssl import ffi, lib
 ImportError: Error relocating /usr/lib/python2.7/site-packages/cryptography/hazmat/bindings/_openssl.so: SSL_CTX_set_psk_client_callback: symbol not found

Thanks, team linuxserver.io

Add Curl Package

Can we add the curl package to the docker image? I have some scripts that trigger the API of some other applications, which requires an HTTP POST to be made with curl.

Error on start when running through VPN

linuxserver.io

OS: Ubuntu 15.10

You can see my docker-compose file here : https://github.com/stramel/htpc/blob/master/docker-compose.yml
Running deluge through a VPN container and it either does one of the two snippets...

*** Running /etc/my_init.d/00_regen_ssh_host_keys.sh...
*** Running /etc/my_init.d/10_add_user_abc.sh...

-------------------------------------
          _     _ _
         | |___| (_) ___
         | / __| | |/ _ \
         | \__ \ | | (_) |
         |_|___/ |_|\___/
               |_|

Brought to you by linuxserver.io
We do accept donations at:
https://www.linuxserver.io/donations
-------------------------------------
GID/UID
-------------------------------------
User uid:    1050
User gid:    1050
-------------------------------------

*** Running /etc/my_init.d/20_apt_update.sh...
finding fastest mirror
Getting list of mirrors...Traceback (most recent call last):
  File "/usr/lib/python3.4/urllib/request.py", line 1182, in do_open
    h.request(req.get_method(), req.selector, req.data, headers)
  File "/usr/lib/python3.4/http/client.py", line 1088, in request
    self._send_request(method, url, body, headers)
  File "/usr/lib/python3.4/http/client.py", line 1126, in _send_request
    self.endheaders(body)
  File "/usr/lib/python3.4/http/client.py", line 1084, in endheaders
    self._send_output(message_body)
  File "/usr/lib/python3.4/http/client.py", line 922, in _send_output
    self.send(msg)
  File "/usr/lib/python3.4/http/client.py", line 857, in send
    self.connect()
  File "/usr/lib/python3.4/http/client.py", line 834, in connect
    self.timeout, self.source_address)
  File "/usr/lib/python3.4/socket.py", line 494, in create_connection
    for res in getaddrinfo(host, port, 0, SOCK_STREAM):
  File "/usr/lib/python3.4/socket.py", line 533, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/aptselect/util_funcs.py", line 19, in get_html
    html = urlopen(url)
  File "/usr/lib/python3.4/urllib/request.py", line 161, in urlopen
    return opener.open(url, data, timeout)
  File "/usr/lib/python3.4/urllib/request.py", line 463, in open
    response = self._open(req, data)
  File "/usr/lib/python3.4/urllib/request.py", line 481, in _open
    '_open', req)
  File "/usr/lib/python3.4/urllib/request.py", line 441, in _call_chain
    result = func(*args)
  File "/usr/lib/python3.4/urllib/request.py", line 1210, in http_open
    return self.do_open(http.client.HTTPConnection, req)
  File "/usr/lib/python3.4/urllib/request.py", line 1184, in do_open
    raise URLError(err)
urllib.error.URLError: <urlopen error [Errno -2] Name or service not known>

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/aptselect/apt-select.py", line 179, in apt_select
    mirrors_list = get_html(mirrors_url)
  File "/app/aptselect/util_funcs.py", line 21, in get_html
    raise HTMLGetError(err)
util_funcs.HTMLGetError: <urlopen error [Errno -2] Name or service not known>

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/app/aptselect/apt-select.py", line 341, in <module>
    apt_select()
  File "/app/aptselect/apt-select.py", line 181, in apt_select
    exit("Error getting list from %s:\n\t%s" % (mirrors_list, err))
UnboundLocalError: local variable 'mirrors_list' referenced before assignment
We are now refreshing packages from apt repositories, this *may* take a while
Err http://apt.linuxserver.io trusty InRelease

Err http://apt.linuxserver.io trusty-updates InRelease

Err http://apt.linuxserver.io trusty-security InRelease

Err http://ppa.launchpad.net trusty InRelease

Err http://apt.linuxserver.io trusty Release.gpg
  Could not resolve 'apt.linuxserver.io'
Err http://apt.linuxserver.io trusty-updates Release.gpg
  Could not resolve 'apt.linuxserver.io'
Err http://ppa.launchpad.net trusty Release.gpg
  Could not resolve 'ppa.launchpad.net'
Err http://apt.linuxserver.io trusty-security Release.gpg
  Could not resolve 'apt.linuxserver.io'
Reading package lists...
W: Failed to fetch http://apt.linuxserver.io/ubuntu/dists/trusty/InRelease

W: Failed to fetch http://apt.linuxserver.io/ubuntu/dists/trusty-updates/InRelease

W: Failed to fetch http://apt.linuxserver.io/ubuntu/dists/trusty-security/InRelease

W: Failed to fetch http://ppa.launchpad.net/deluge-team/ppa/ubuntu/dists/trusty/InRelease

W: Failed to fetch http://apt.linuxserver.io/ubuntu/dists/trusty/Release.gpg  Could not resolve 'apt.linuxserver.io'

W: Failed to fetch http://apt.linuxserver.io/ubuntu/dists/trusty-updates/Release.gpg  Could not resolve 'apt.linuxserver.io'

W: Failed to fetch http://apt.linuxserver.io/ubuntu/dists/trusty-security/Release.gpg  Could not resolve 'apt.linuxserver.io'

W: Failed to fetch http://ppa.launchpad.net/deluge-team/ppa/ubuntu/dists/trusty/Release.gpg  Could not resolve 'ppa.launchpad.net'

W: Some index files failed to download. They have been ignored, or old ones used instead.
*** Running /etc/my_init.d/999_advanced_script.sh...
*** Running /etc/rc.local...
*** Booting runit daemon...
*** Runit started as PID 36
[INFO    ] 23:47:30 configmanager:70 Setting config directory to: /config
[INFO    ] 23:47:30 ui:121 Deluge ui 1.3.12
[INFO    ] 23:47:30 ui:124 Starting web ui..
[INFO    ] 23:47:30 server:662 Starting server in PID 44.
[INFO    ] 23:47:30 server:676 serving on 0.0.0.0:8112 view at http://127.0.0.1:8112
Mar 12 23:47:30 1183c847cdde syslog-ng[46]: syslog-ng starting up; version='3.5.3'

OR

$ docker logs -f deluge
*** Running /etc/my_init.d/00_regen_ssh_host_keys.sh...
*** Running /etc/my_init.d/10_add_user_abc.sh...

-------------------------------------
          _     _ _
         | |___| (_) ___
         | / __| | |/ _ \
         | \__ \ | | (_) |
         |_|___/ |_|\___/
               |_|

Brought to you by linuxserver.io
We do accept donations at:
https://www.linuxserver.io/donations
-------------------------------------
GID/UID
-------------------------------------
User uid:    1050
User gid:    1050
-------------------------------------

*** Running /etc/my_init.d/20_apt_update.sh...
finding fastest mirror
Getting list of mirrors...done.
Testing 77 mirror(s)
[4/77] 5%
connection to mirror.us.leaseweb.net: timed out
[5/77] 6%[Errno -3] Temporary failure in name resolution: http://mirrors.rit.edu/ubuntu/ ignored
[6/77] 7%[Errno -3] Temporary failure in name resolution: http://mirror.nodesdirect.com/ubuntu/ ignored
[7/77] 9%[Errno -3] Temporary failure in name resolution: http://ubuntuarchive.mirror.nac.net/ ignored
[8/77] 10%[Errno -3] Temporary failure in name resolution: http://mirrors.wikimedia.org/ubuntu/ ignored
[9/77] 11%[Errno -3] Temporary failure in name resolution: http://mirror.umd.edu/ubuntu/ ignored
[10/77] 12%[Errno -3] Temporary failure in name resolution: http://ubuntu.mirrors.pair.com/archive/ ignored
[11/77] 14%[Errno -3] Temporary failure in name resolution: http://mirror.atlantic.net/ubuntu/ ignored
[12/77] 15%[Errno -3] Temporary failure in name resolution: http://mirrors.mit.edu/ubuntu/ ignored
[13/77] 16%[Errno -3] Temporary failure in name resolution: http://mirrors.maine.edu/ubuntu/ ignored
[14/77] 18%[Errno -3] Temporary failure in name resolution: http://ubuntu.mirrors.tds.net/pub/ubuntu/ ignored
[15/77] 19%[Errno -3] Temporary failure in name resolution: http://mirror.imbrandon.com/ubuntu/ ignored
[16/77] 20%[Errno -3] Temporary failure in name resolution: http://archive.ubuntu.com/ubuntu/ ignored
[17/77] 22%[Errno -3] Temporary failure in name resolution: http://ftp.usf.edu/pub/ubuntu/ ignored
[18/77] 23%[Errno -3] Temporary failure in name resolution: http://ubuntu.mirrors.wvstateu.edu/ ignored
[19/77] 24%[Errno -3] Temporary failure in name resolution: http://cosmos.cites.illinois.edu/pub/ubuntu/ ignored
[20/77] 25%[Errno -3] Temporary failure in name resolution: http://mirrors.xmission.com/ubuntu/ ignored
[21/77] 27%[Errno -3] Temporary failure in name resolution: http://mirror.steadfast.net/ubuntu/ ignored
[22/77] 28%[Errno -3] Temporary failure in name resolution: http://repos.forethought.net/ubuntu/ ignored
[23/77] 29%[Errno -3] Temporary failure in name resolution: http://mirrors.usinternet.com/ubuntu/archive/ ignored
[24/77] 31%[Errno -3] Temporary failure in name resolution: http://ubuntu.mirror.constant.com/ ignored
[25/77] 32%[Errno -3] Temporary failure in name resolution: http://mirror.hmc.edu/ubuntu/ ignored
[26/77] 33%[Errno -3] Temporary failure in name resolution: http://mirror.cs.pitt.edu/ubuntu/archive/ ignored
[27/77] 35%[Errno -3] Temporary failure in name resolution: http://mirror.ancl.hawaii.edu/linux/ubuntu/ ignored
[28/77] 36%[Errno -3] Temporary failure in name resolution: http://mirrors.us.kernel.org/ubuntu/ ignored
[29/77] 37%*** An error occurred. Aborting.
*** Shutting down /etc/my_init.d/20_apt_update.sh (PID 23)...
*** Init system aborted.
*** Killing all processes...

Thanks, team linuxserver.io

Doesnt set correct file permissions on files

Host: Debian stretch

Config:

docker create \
--
--name deluge \
--network=macvlan0 \
--ip=10.0.0.23 \
-h deluge \
-e PGID=888 -e PUID=888 \
-e UMASK_SET="002" \
-v /data/cdb/deluge:/config \
-v /mnt/storage/incomplete:/incomplete \
-v /mnt/storage/downloads:/downloads \
-v /mnt/storage/pvr:/pvr \
linuxserver/deluge

The files keep gettin this permission: -rw-rw-r--
When they should in fact get this: -rwxrwxrw-

Whats even more strange is that this isnt consistent, some files get the correct permission while some dont. And these torrents are sometimes added within minutes of each other and still have different permissions set.

I have checked that the umask is set correctly inside the container once its running.
Its running in daemon mode with remote access.

Deluge won't start - permission denied

I am trying to create deluge in a docker but am running into permission denied errors and deluge cannot even start. I have checked through the github closed issues list but am still at a lost of what to do.

linuxserver.io

RHEL 7.4 Developer License

As root:
docker create --name deluge_shows --net=host -p 8112:8112 -e PUID=1001 -e PGID=1003 -e TZ=America/New_York -e UMASK_SET=022 -v /root/media/Deluge/Shows:/downloads -v /deluge_config/deluge_shows:/config linuxserver/delugell

PUID and PGID of user deluge
uid=1001(deluge) gid=1003(deluge) groups=1003(deluge)

who owns the directories

drwxrwxrwx. 2 deluge deluge 6 Feb 2 18:58 deluge_shows
drwxr-xr-x. 2 deluge deluge 6 Feb 2 19:03 Shows

`[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

      _         ()
     | |  ___   _    __
     | | / __| | |  /  \
     | | \__ \ | | | () |
     |_| |___/ |_|  \__/

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donations/

GID/UID

User uid: 1001
User gid: 1003

usermod: Failed to change ownership of the home directorychown: changing ownership of '/config': Permission denied
[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
chown: cannot read directory '/config': Permission denied
chown: changing ownership of '/downloads': Permission denied
[cont-init.d] 30-config: exited 1.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
Traceback (most recent call last):
File "/usr/bin/deluged", line 11, in
load_entry_point('deluge==1.3.15', 'console_scripts', 'deluged')()
File "/usr/lib/python2.7/site-packages/deluge/main.py", line 194, in start_daemon
deluge.log.setupLogger(level=options.loglevel, filename=options.logfile)
File "/usr/lib/python2.7/site-packages/deluge/log.py", line 65, in setupLogger
filemode=filemode
File "/usr/lib/python2.7/logging/init.py", line 1547, in basicConfig
hdlr = FileHandler(filename, mode)
File "/usr/lib/python2.7/logging/init.py", line 913, in init
StreamHandler.init(self, self._open())
File "/usr/lib/python2.7/logging/init.py", line 943, in _open
stream = open(self.baseFilename, self.mode)
IOError: [Errno 13] Permission denied: '/config/deluged.log'
[INFO ] 04:45:30 configmanager:70 Setting config directory to: /config
[INFO ] 04:45:30 ui:124 Deluge ui 1.3.15
[INFO ] 04:45:30 ui:127 Starting web ui..
Traceback (most recent call last):
File "/usr/bin/deluged", line 11, in
load_entry_point('deluge==1.3.15', 'console_scripts', 'deluged')()
File "/usr/lib/python2.7/site-packages/deluge/main.py", line 194, in start_daemon
deluge.log.setupLogger(level=options.loglevel, filename=options.logfile)
File "/usr/lib/python2.7/site-packages/deluge/log.py", line 65, in setupLogger
filemode=filemode
File "/usr/lib/python2.7/logging/init.py", line 1547, in basicConfig
hdlr = FileHandler(filename, mode)
File "/usr/lib/python2.7/logging/init.py", line 913, in init
StreamHandler.init(self, self._open())
File "/usr/lib/python2.7/logging/init.py", line 943, in _open
stream = open(self.baseFilename, self.mode)
IOError: [Errno 13] Permission denied: '/config/deluged.log'
[WARNING ] 04:45:30 config:364 Unable to open config file /config/web.conf: [Errno 2] No such file or directory: '/config/web.conf'
Traceback (most recent call last):
File "/usr/bin/deluge-web", line 11, in
load_entry_point('deluge==1.3.15', 'console_scripts', 'deluge-web')()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/web.py", line 144, in start
web.start()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/web.py", line 111, in start
self.__server = server.DelugeWeb()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 633, in init
self.top_level = TopLevel()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 505, in init
self.putChild("tracker", Tracker())
File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 208, in init
self.tracker_icons = TrackerIcons()
File "/usr/lib/python2.7/site-packages/deluge/ui/tracker_icons.py", line 161, in init
os.makedirs(self.dir)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/config/icons'
[INFO ] 04:45:31 configmanager:70 Setting config directory to: /config
[INFO ] 04:45:31 ui:124 Deluge ui 1.3.15
[INFO ] 04:45:31 ui:127 Starting web ui..
Traceback (most recent call last):
File "/usr/bin/deluged", line 11, in
load_entry_point('deluge==1.3.15', 'console_scripts', 'deluged')()
File "/usr/lib/python2.7/site-packages/deluge/main.py", line 194, in start_daemon
deluge.log.setupLogger(level=options.loglevel, filename=options.logfile)
File "/usr/lib/python2.7/site-packages/deluge/log.py", line 65, in setupLogger
filemode=filemode
File "/usr/lib/python2.7/logging/init.py", line 1547, in basicConfig
hdlr = FileHandler(filename, mode)
File "/usr/lib/python2.7/logging/init.py", line 913, in init
StreamHandler.init(self, self._open())
File "/usr/lib/python2.7/logging/init.py", line 943, in _open
stream = open(self.baseFilename, self.mode)
IOError: [Errno 13] Permission denied: '/config/deluged.log'
[WARNING ] 04:45:31 config:364 Unable to open config file /config/web.conf: [Errno 2] No such file or directory: '/config/web.conf'
Traceback (most recent call last):
File "/usr/bin/deluge-web", line 11, in
load_entry_point('deluge==1.3.15', 'console_scripts', 'deluge-web')()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/web.py", line 144, in start
web.start()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/web.py", line 111, in start
self.__server = server.DelugeWeb()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 633, in init
self.top_level = TopLevel()
File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 505, in init
self.putChild("tracker", Tracker())
File "/usr/lib/python2.7/site-packages/deluge/ui/web/server.py", line 208, in init
self.tracker_icons = TrackerIcons()
File "/usr/lib/python2.7/site-packages/deluge/ui/tracker_icons.py", line 161, in init
os.makedirs(self.dir)
File "/usr/lib/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
`

Thanks, team linuxserver.io

Thanks in advance for your help!

Default directory in image is wrong

The instructions in the README file say to do the following:
-v </path/to/your/downloads>:/downloads

The actual default download path is:
/root/Downloads

On top of the directory being wrong, it uses a capital "D", which can cause issues on case-sensitive systems (such as Linux).

Unable to set hostname of deluge container

Hi Guys,

I'm able to pass the -h parameter to docker run to specify the containers hostname with a lsiobase/alpine container (which is what I believe this Deluge container is based off of) but the flag has no effect when used with the linuxserver/deluge container. Please see the command outputs below (I have added bold for extra clarity).

Setting the hostname on a lsiobase/alpine container (works):

ollie@scrappy-server:~$
ollie@scrappy-server:~$ sudo docker run --name hostname-test -h test-hostname --rm -it lsiobase/alpine /bin/sh
Unable to find image 'lsiobase/alpine:latest' locally
latest: Pulling from lsiobase/alpine
a03be5b52c0f: Already exists
f6b6112e832f: Already exists
11b8b96c8a86: Already exists
5e57b4f45c56: Already exists
Digest: sha256:51aa6589be916d520df7d81b6c2e92898defa1fe9e8a6e57be1423afcb0b1d8b
Status: Downloaded newer image for lsiobase/alpine:latest
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
          _     _ _
         | |___| (_) ___
         | / __| | |/ _ \
         | \__ \ | | (_) |
         |_|___/ |_|\___/
               |_|

Brought to you by linuxserver.io
We do accept donations at:
https://www.linuxserver.io/donations
-------------------------------------
GID/UID
-------------------------------------
User uid:    911
User gid:    911
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
root@test-hostname:/$ cat /etc/hostname
test-hostname
root@test-hostname:/$ /bin/sh exited 0
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] syncing disks.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
ollie@scrappy-server:~$

Setting the hostname on a linuxserver/deluge container (does not work):

ollie@scrappy-server:~$
ollie@scrappy-server:~$ sudo docker run --name deluge --net=host -h deluge -e PUID=155 -e PGID=155 -e TZ=Europe/London -v /home/deluge/downloads:/donwloads -v /home/deluge/config:/config --rm -it linuxserver/deluge sh
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
          _     _ _
         | |___| (_) ___
         | / __| | |/ _ \
         | \__ \ | | (_) |
         |_|___/ |_|\___/
               |_|

Brought to you by linuxserver.io
We do accept donations at:
https://www.linuxserver.io/donations
-------------------------------------
GID/UID
-------------------------------------
User uid:    155
User gid:    155
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
root@scrappy-server:/$ [INFO    ] 14:36:29 configmanager:70 Setting config directory to: /config
[INFO    ] 14:36:29 ui:124 Deluge ui 1.3.13
[INFO    ] 14:36:29 ui:127 Starting web ui..
[INFO    ] 14:36:29 server:650 Starting server in PID 208.
[INFO    ] 14:36:29 server:664 serving on 0.0.0.0:8112 view at http://127.0.0.1:8112

root@scrappy-server:/$ cat /etc/hostname
scrappy-server
root@scrappy-server:/$ sh exited 0
[INFO    ] 14:36:47 server:681 Shutting down webserver
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] syncing disks.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
ollie@scrappy-server:~$

Thanks
Ollie

Can't open config files on Synology docker?

I'm getting a weird error. I've tried changing the UID/GID to match, even tried everything as root, still doesn't work. The issue is Deluge runs fine, but none of my settings are saved, at all.

I get the following in the logs, but the odd thing is, the container creates the files in the /config and everything is there (all the files it says can't be opened are sitting there with full read/write permissions on every user).... stumped! :(

`

date stream content
2018-03-05 11:55:25 stdout [INFO    ] 03:55:25 server:679 Serving on 0.0.0.0:8112 view at http://0.0.0.0:8112
2018-03-05 11:55:25 stdout [INFO    ] 03:55:25 server:666 Starting server in PID 227.
2018-03-05 11:55:24 stdout [WARNING ] 03:55:24 config:443 Unable to backup old config...
2018-03-05 11:55:24 stdout [WARNING ] 03:55:24 config:423 Unable to open config file: /config/hostlist.conf.1.2 because: [Errno 2] No such file or directory: '/config/hostlist.conf.1.2'
2018-03-05 11:55:24 stdout [WARNING ] 03:55:24 config:364 Unable to open config file /config/hostlist.conf.1.2: [Errno 2] No such file or directory: '/config/hostlist.conf.1.2'
2018-03-05 11:55:24 stdout [WARNING ] 03:55:24 config:364 Unable to open config file /config/web.conf: [Errno 2] No such file or directory: '/config/web.conf'
2018-03-05 11:55:23 stdout [INFO    ] 03:55:23 ui:127 Starting web ui..
2018-03-05 11:55:23 stdout [INFO    ] 03:55:23 ui:124 Deluge ui 1.3.15
2018-03-05 11:55:23 stdout [INFO    ] 03:55:23 configmanager:70 Setting config directory to: /config
2018-03-05 11:55:22 stdout [services.d] done.
2018-03-05 11:55:22 stdout [services.d] starting services
2018-03-05 11:55:22 stdout [cont-init.d] done.
2018-03-05 11:55:22 stdout [cont-init.d] 30-config: exited 0.
2018-03-05 11:55:22 stdout [cont-init.d] 30-config: executing...
2018-03-05 11:55:22 stdout [cont-init.d] 10-adduser: exited 0.
2018-03-05 11:55:22 stdout  
2018-03-05 11:55:22 stdout -------------------------------------
2018-03-05 11:55:22 stdout User gid:    911
2018-03-05 11:55:22 stdout User uid:    0
2018-03-05 11:55:22 stdout  
2018-03-05 11:55:22 stdout -------------------------------------
2018-03-05 11:55:22 stdout GID/UID
2018-03-05 11:55:22 stdout -------------------------------------
2018-03-05 11:55:22 stdout https://www.linuxserver.io/donations/
2018-03-05 11:55:22 stdout We gratefully accept donations at:
2018-03-05 11:55:22 stdout Brought to you by linuxserver.io
2018-03-05 11:55:22 stdout  
2018-03-05 11:55:22 stdout  
2018-03-05 11:55:22 stdout || |/ ||  _/
2018-03-05 11:55:22 stdout | | __ \ | | | () |
2018-03-05 11:55:22 stdout | | / __| | |  /  \
2018-03-05 11:55:22 stdout | |  ___   _    __
2018-03-05 11:55:22 stdout _         ()
2018-03-05 11:55:22 stdout -------------------------------------

`

Watch folder for download not present

Version : build_version: Linuxserver.io version:- 2.0.3-2201906121747ubuntu18.04.1-ls32

Problem : Option for watch folder feature missing from build

Expected behaviour: Said option to appear under download paths section.

Deluge erases Proxy settings set in core.conf or through web interfaces

linuxserver.io

Ubuntu 16.10

sudo docker create \ --name deluge \ -e VERSION=latest \ -e PUID=1000 -e PGID=1000 \ -e TZ="America/New_York" \ -v /dock/deluge/downloads:/downloads \ -v /dock/deluge/config:/config \ -p 8112:8112 \ --net docknet1 --ip 172.20.0.10 \ linuxserver/deluge

https://gist.github.com/ajthemacboy/b33ff11ac03e777c078760f30047943f

No symlinks

When I attempt to set proxy settings in the web interface, or copy working proxy settings from another Deluge installation's core.conf INTO the Deluge container's core.conf, all but the "Peer" proxy settings are removed.

Before: I fill out the proxy settings: http://eyestra.in/ul/u/FWVZpLk.png http://eyestra.in/ul/u/yyeDeoN.png

I click "Apply" or "OK", switch to another menu page, and return. All but the "Peer" settings are removed: http://eyestra.in/ul/u/rcWGAVq.png

I also tried copying working proxy settings from the core.conf of another Deluge installation into the core.conf for the container. The proxy lines are replaced with empty lines: http://eyestra.in/ul/u/kg6Kik3.png

Whenever I set core.conf to be read-only with 0444, the lines remain in core.conf, but are empty in the web interface settings.

What I've tried:

  • Removing the container and creating a new one
  • Deleting the config folder and letting it regenerate
  • Copying all the config files from another working installation into the container's config
  • Made sure all file permissions are correct

Thanks, team linuxserver.io

Torrent are always in error status

linuxserver.io

I'm in trouble configuring the container. I can successfully connect to the interface and add torrent. But they always end up with error.
Here is the command I'm running :

docker run \
      --name="deluge" -d \
      --net=host \
      -e TZ=Europe/Paris \
      -e PUID=1000 \
      -e PGID=1000 \
      -p 8112:8112 \
      -p 58846:58846 \
      -p 58946:58946 \
      -v /home/foo/deluge:/config \
      -v /home/foo/data:/downloads \
      --restart unless-stopped \
       linuxserver/deluge

The folder /home/foo is under the right permission.

The Host OS is CentOS 7

Here is the log I'm getting :

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-scripts: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
11:26:28 [WARNING ][deluge.config              :410 ] Unable to open config file /config/web.conf: [Errno 2] No such file or directory: '/config/web.conf'
11:26:28 [WARNING ][deluge.i18n.util           :83  ] IOError when loading translations: [Errno 2] No translation file found for domain: 'deluge'
11:26:28 [WARNING ][deluge.config              :410 ] Unable to open config file /config/hostlist.conf: [Errno 2] No such file or directory: '/config/hostlist.conf'
11:26:28 [WARNING ][deluge.config              :475 ] Unable to open config file: /config/hostlist.conf because: [Errno 2] No such file or directory: '/config/hostlist.conf'
11:26:28 [WARNING ][deluge.config              :500 ] Unable to backup old config: [Errno 2] No such file or directory: '/config/hostlist.conf'
11:26:40 [WARNING ][deluge.config              :475 ] Unable to open config file: /config/web.conf because: [Errno 2] No such file or directory: '/config/web.conf'
11:26:40 [WARNING ][deluge.config              :500 ] Unable to backup old config: [Errno 2] No such file or directory: '/config/web.conf'
11:26:56 [ERROR   ][deluge.ui.web.json_api     :438 ] Unable to connect to daemon, check host_id "024e40c93f5142b98a5d1f4e1f69126f" is correct.
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] waiting for services.
s6-svwait: fatal: supervisor died
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing...
usermod: no changes

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1000
User gid:    1000
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-scripts: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
11:27:04 [WARNING ][deluge.i18n.util           :83  ] IOError when loading translations: [Errno 2] No translation file found for domain: 'deluge'

Here is what I'm getting :

alt text

Thanks, team linuxserver.io

Add dependencies to be able to load rss feeds from https:// addresses

Hello, first, great job in doing this package! Saved me a lot of work!

In my setup, I use the YaRSS2 plugin to automatically add torrents from an RSS feed. It works without issues with HTTP addresses but fails with https.

Host OS: FreeNAS Corral
Standard image configuration.

My suggestion is to include something like:

RUN apk update \
&& apk add ca-certificates openssl \
&& update-ca-certificates

Running this by hand allowed it to work as expected. I don't have much experience creating / editing docker containers so that is why this is not a pull request.

Global upload speed limit is ignored

Problem
When setting the global upload speed limit to 40kb/s for example, torrents are still being uploaded at 200-300kb/s completely saturating my network.

Host OS: Ubuntu 16.04.4 LTS

Research suggests it's an issue with the libtorrent version inside the container:
https://forum.deluge-torrent.org/viewtopic.php?f=7&t=54939

After trying to set the global bandwidth upload limit multiple times without success, I tried setting a per torrent limit. This worked, so I'll be using this as a workaround, but I still felt like I should report the issue :)

Thanks for the great work on these docker images, my entire homelab / mediacenter is powered by you guys!

Feature Request: Customize umask

Is there a way you could provide an environment variable or configuration option that would modify the umask that deluge will use when creating new files? The current 022 is problematic for my scenario because not all access to the filesystem will be done by the same user, but all access is restricted to the same group. I have 2 workarounds, 1 is manually editing /etc/services.d/deluged/run to change the umask to 002 or 007, or using the execute plugin to perform the chmod to change the files to the necessary permissions, but I would rather be able to configure it in the container properties.

I am currently using this on unraid, but I think this would apply to all systems when using this docker container.

[Solved ]Deluge doesn't save downloads to the mapped volume

When i add a torrent to deluge and specify the shares, one for config and one for downloads. It downloads the data in a subfolder under the config share. I have changed the download share different times but doesn't work and totally ignores the specified download share and download the torrent data in the config share. I have made sure that UID and GUID am using having permissions to the download share.

Rockstor

permission denied

Installed on Synology 1815 DSM 6.02 with latest docer package

Have other of your containers configured and running and never an issue with permissions

When adding a torrent it downloads a few kilobytes but when it has to write it to the disk it says:
"Permission denied: /Downloads/Incomplete/...."

Have looked in forums for solution but no luck.

Images not starting up after recent update

I recently updated my images and have now been getting the following error when starting up my Deluge container, any ideas as to what may be causing this or what I can do to resolve it?

OpenMediaVault (Debain 9)

sudo docker run -d --name=deluge --net=container:openvpn -e PUID=1001 -e PGID=1000 -e TZ=Europe/London -e UMASK_SET=022 -v /srv/d1b79442-25b9-4eef-b971-2b1eee560615/downloads/deluge/downloads:/downloads -v /srv/d1b79442-25b9-4eef-b971-2b1eee560615/downloads/deluge/completed:/completed -v /srv/d1b79442-25b9-4eef-b971-2b1eee560615/downloads/deluge/autoadd:/autoadd -v /home/docker/.config/deluge:/config -v /srv/d1b79442-25b9-4eef-b971-2b1eee560615/downloads/deluge/completed-sonarr:/sonarr -v /srv/d1b79442-25b9-4eef-b971-2b1eee560615/downloads/deluge/completed-radarr:/radarr linuxserver/deluge:latest


      _         ()
     | |  ___   _    __
     | | / __| | |  /  \
     | | \__ \ | | | () |
     |_| |___/ |_|  \__/

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/

GID/UID

User uid: 1001
User gid: 1000

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-scripts: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
23:56:22 [WARNING ][deluge.i18n.util :83 ] IOError when loading translations: [Errno 2] No translation file found for domain: 'deluge'

Unable to add new torrents via URL due to possible Python 3 issue

Expected Behavior

I am able to add a torrent to the server via WebUI by adding a URL directly.

Current Behavior

The Chrome console shows deluge-all.js:17 Uncaught TypeError: Cannot read property 'filename' of undefined but the likely underlying error is on the server side: [ERROR ][deluge.ui.web.json_api :218 ] Object of type 'bytes' is not JSON serializable. My hypothesis is that this is related to the Python 3 upgrade inside the container, since Python 3 handles strings differently.

Steps to Reproduce

  1. On the main Deluge WebUI page, click "Add" in the top left
  2. Click "(+) Url"
  3. Paste this URL into the box: https://archive.org/download/wikidevi/wikidevi_archive.torrent
  4. Click "Add"
  5. Note that nothing visible happens, but the console shows the filename-related error and the Docker container log shows the bytes error.

Environment

OS: Ubuntu Xenial (16.04)
CPU architecture: x86_64
How docker service was installed: Docker.com PPA

Command used to create docker container (run/create/compose/screenshot)

From docker-compose.yaml:

  deluge:
    container_name: deluge
    image: linuxserver/deluge
    volumes:
      - /data/Downloads/Torrents:/downloads
      - /var/local/deluge:/config
    environment:
      - PUID=119
      - PGID=130
      - TZ=America/New_York
    network_mode: host
    restart: always

Docker logs

[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing... 
usermod: no changes

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \ 
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    119
User gid:    130
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing... 
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-scripts: executing... 
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
23:30:11 [WARNING ][deluge.i18n.util           :83  ] IOError when loading translations: [Errno 2] No translation file found for domain: 'deluge'
23:34:21 [ERROR   ][deluge.ui.web.json_api     :218 ] Object of type 'bytes' is not JSON serializable

Build #137 has some DNS / tracker connectivity issues

Host OS: Debian 9 (OMV 4 default)
Docker: latest CE stable

I am updating my containers with watchtower. Today, build 137 was pushed on Docker Hub and I noticed my torrents were down with the tracker status 'name: tracker unavailable' for all possible trackers. I verified and trackers were up and running and were accessible from any other client. Both container, host and hypervisor clocks are in sync and updated by NTP hourly.

I tried restarting the container and the VM hosting Docker. Neither bore any results - after restart all trackers were slowly polled and were unreachable. From the container I can ping any trackers so it doesn't seem to be a network connectivity issue. I have not tried other operations.

Considering these I rolled back to build 136. Startup with previous configuration had no issues, all my settings were retained. After everything loaded, all tracker statuses were back to normal 'name: Announce OK'.

Source not building

I'm on Debian 3.16.0-4-amd64
Got the following log

sudo docker build -t docker .
Sending build context to Docker daemon 28.67 kB
Step 1 : FROM lsiobase/alpine
 ---> 0550c8376c96
Step 2 : MAINTAINER Gonzalo Peci <[email protected]>, sparklyballs
 ---> Using cache
 ---> 6e7553dab0e6
Step 3 : ENV PYTHON_EGG_CACHE "/config/plugins/.python-eggs"
 ---> Using cache
 ---> af17aa29f6db
Step 4 : RUN apk add --no-cache         p7zip   python  unrar   unzip &&  apk add --no-cache    --repository http://nl.alpinelinux.org/alpine/edge/testing      deluge &&  apk add --no-cache --virtual=build-dependencies      g++     gcc libffi-dev       openssl-dev     py-pip  python-dev &&  pip install --no-cache-dir -U    crypto  mako    markupsafe      pyopenssl       service_identity        six     twisted         zope.interface &&  apk del --purge      build-dependencies &&  rm -rf        /root/.cache
 ---> Running in 06205b57f922
fetch http://alpine.gliderlabs.com/alpine/v3.4/main/x86_64/APKINDEX.tar.gz
fetch http://alpine.gliderlabs.com/alpine/v3.4/community/x86_64/APKINDEX.tar.gz
(1/11) Installing libgcc (5.3.0-r0)
(2/11) Installing libstdc++ (5.3.0-r0)
(3/11) Installing p7zip (15.14.1-r0)
(4/11) Installing libbz2 (1.0.6-r5)
(5/11) Installing expat (2.1.1-r1)
(6/11) Installing libffi (3.2.1-r2)
(7/11) Installing gdbm (1.11-r1)
(8/11) Installing sqlite-libs (3.13.0-r0)
(9/11) Installing python (2.7.12-r0)
(10/11) Installing unrar (5.3.11-r0)
(11/11) Installing unzip (6.0-r1)
Executing busybox-1.24.2-r11.trigger
OK: 69 MiB in 33 packages
fetch http://nl.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz
fetch http://alpine.gliderlabs.com/alpine/v3.4/main/x86_64/APKINDEX.tar.gz
fetch http://alpine.gliderlabs.com/alpine/v3.4/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
  so:libcrypto.so.38 (missing):
    required by:
                 libtorrent-rasterbar-1.0.9-r1[so:libcrypto.so.38]
                 libtorrent-rasterbar-1.0.9-r1[so:libcrypto.so.38]
  so:libssl.so.39 (missing):
    required by:
                 libtorrent-rasterbar-1.0.9-r1[so:libssl.so.39]
                 libtorrent-rasterbar-1.0.9-r1[so:libssl.so.39]
The command '/bin/sh -c apk add --no-cache      p7zip   python  unrar   unzip &&  apk add --no-cache    --repository http://nl.alpinelinux.org/alpine/edge/testing      deluge &&  apk add --no-cache --virtual=build-dependencies      g++ gcc      libffi-dev      openssl-dev     py-pip  python-dev &&  pip install --no-cache-dir -U    crypto  mako    markupsafe      pyopenssl       service_identity        six     twisted         zope.interface &&  apk del --purge      build-dependencies &&  rm -rf        /root/.cache' returned a non-zero code: 4

Maby using alpine edge is not the best suited for deluge.
This might be related: https://news.ycombinator.com/item?id=12691733

PUID and PGID both set to 0 not working as expected ?

docker -v
Docker version 1.12.3, build 6b644ec

docker-compose -v
docker-compose version 1.8.1, build 878cff1

When i set the PUID and PGID to 0, the container doesn't get updated correctly. Below are some examples to illustrate. ( yes, running as root = naughty but curious why it doesn't work none the less )

with compose

 deluge:
    image: "linuxserver/deluge"
    environment:
      - "PUID=0"
      - "PGID=0"

I get wrong GID for abc within the container ? Remains as 1001.

root@9e1274f0b92f:/$ egrep abc /etc/passwd /etc/group
/etc/passwd:abc:x:0:1001::/config:/bin/false
/etc/group:users:x:1000:games,abc
/etc/group:abc:!:1001:

But when i remove container, image and change the ENV within compose to some other random number..

 deluge:
    image: "linuxserver/deluge"
    environment:
      - "PUID=10"
      - "PGID=0"

It gives me what i'd expect ( i.e UID and GID as per ENV )

root@cd7e805d789d:/$ egrep abc /etc/passwd /etc/group
/etc/passwd:abc:x:10:0::/config:/bin/false
/etc/group:users:x:1000:games,abc
/etc/group:abc:!:0:

Any ideas ?

thanks.

Cannot connect to daemon within container

Brief

I cannot connect to the daemon within the running docker container. I have tried running deluge-web and deluge-console from within the container, as well as from the host system. In each case I was unable to connect to the daemon. I was able to connect to the daemon when I ran it directly on the host system.

linuxserver.io

More info

I have been using your image for several months with no problems. Today I was using the deluge web UI from the container to add a few small torrents. These torrents added successfully, and began downloading almost immediately. I switched tabs to my email and came back to the deluge tab about 30 minutes later. When I returned the connection manager was open, showing the daemon as Offline. The Start Daemon button had no effect. I was unable to click Connect from the web UI because the daemon was offline. I tried removing the daemon from the list so I could re-add it, but this also had no effect. I could not add a duplicate daemon to the connection manager.

Here is the output of ps from within the container:

root@feaf5c923037:/$ ps
PID   USER     TIME   COMMAND
    1 root       0:00 s6-svscan -t0 /var/run/s6/services
   33 root       0:00 s6-supervise s6-fdholderd
  205 root       0:00 s6-supervise deluged
  206 root       0:00 s6-supervise deluge-web
  208 abc        0:02 {deluge-web} /usr/bin/python /usr/bin/deluge-web -c /config --loglevel=info
  210 abc        0:00 {deluged} /usr/bin/python /usr/bin/deluged -c /config -d --loglevel=info -l /config/deluged.log
  269 root       0:00 /bin/bash
  321 root       0:00 ps

You can see that both processes are very much alive. I tried killing deluged with SIGINT so I could manually restart it and (hopefully) see more console output. deluged was restarted automatically for me, and I didn't deem it wise to delete the pid file and run multiple daemons. The docker.log file didn't offer much insight:

[INFO    ] 11:09:45 configmanager:70 Setting config directory to: /config
[INFO    ] 11:09:45 daemon:124 Deluge daemon 1.3.13
[INFO    ] 11:09:45 configmanager:70 Setting config directory to: /config
[INFO    ] 11:09:45 core:85 Starting libtorrent 1.0.9.0 session..
[INFO    ] 11:09:45 rpcserver:367 Starting DelugeRPC server :58846
[WARNING ] 11:09:45 preferencesmanager:496 Unable to find GeoIP database file!
[INFO    ] 11:09:45 torrentmanager:650 Successfully loaded state file: /config/state/torrents.state
[INFO    ] 11:09:45 torrentmanager:779 Successfully loaded fastresume file: /config/state/torrents.fastresume

I tried debugging this by running deluge-console from within the container and from the host system. I was not able to connect to the daemon from either instance of deluge-console. I then tried starting the web UI on my host system. I was unable to connect to the daemon from this instance as well. I found that I was able to successfully run (and connect to) the daemon if the daemon was run from the host system (using the same parameters I saw from ps, substituting volume mount paths). Everything seemed to work right away, which gives me some confidence that my config is not the problem. This isn't a great workaround though, since there are paths within the config that point to volume locations within the container.

I would like some assistance getting back to a working state. Let me know what information you need from me to help resolve this.

Requested details

Host OS

%> uname -srvo
Linux 4.6.0-0.bpo.1-amd64 #1 SMP Debian 4.6.3-1~bpo8+1 (2016-07-13) GNU/Linux

Command line user

%> id
uid=1000(cpatton) gid=1000(cpatton) groups=1000(cpatton),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),108(netdev),115(bluetooth),999(docker)

Docker log

-------------------------------------
          _     _ _
         | |___| (_) ___
         | / __| | |/ _ \
         | \__ \ | | (_) |
         |_|___/ |_|\___/
               |_|

Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/index.php/donations/
-------------------------------------
GID/UID
-------------------------------------
User uid:    1000
User gid:    1000
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing...
[cont-init.d] 30-config: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
[INFO    ] 10:46:21 configmanager:70 Setting config directory to: /config
[INFO    ] 10:46:21 ui:124 Deluge ui 1.3.13
[INFO    ] 10:46:21 ui:127 Starting web ui..
[INFO    ] 10:46:21 server:650 Starting server in PID 210.
[INFO    ] 10:46:21 server:664 serving on 0.0.0.0:8112 view at http://127.0.0.1:8112
[INFO    ] 10:46:21 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:21 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:21 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:21 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:26 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:26 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:26 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:26 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:28 client:217 Connecting to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:28 client:121 Connected to daemon at 127.0.0.1:58846..
[INFO    ] 10:46:29 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection to the other side was lost in a non-clean fashion: Connection lost.
[INFO    ] 10:46:29 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection to the other side was lost in a non-clean fashion: Connection lost.
[INFO    ] 10:46:29 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection to the other side was lost in a non-clean fashion: Connection lost.
[INFO    ] 10:46:29 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection to the other side was lost in a non-clean fashion: Connection lost.
[INFO    ] 10:46:29 client:224 Connection lost to daemon at 127.0.0.1:58846 reason: Connection to the other side was lost in a non-clean fashion: Connection lost.
[INFO    ] 10:46:29 server:681 Shutting down webserver
[cont-finish.d] executing container finish scripts...
[cont-finish.d] done.
[s6-finish] syncing disks.
[s6-finish] sending all processes the TERM signal.
[s6-finish] sending all processes the KILL signal and exiting.

There are no symlinks within the volume mounts.

Thanks, team linuxserver.io

Unclear "permission denied"

linuxserver.io

OS: Raspbian GNU/Linux 8

Run command:

docker run -d --name=deluge -e PUID=1001 -e PGID=1001 -v /home/sukys/deluge-conf:/config -v /media/data/Downloads:/downloads --restart unless-stopped -p 58846:58846 -p 8112:8112 -p 58946:58946 linuxserver/deluge:arm32v7-latest

Docker logs:

docker logs deluge
[s6-init] making user provided files available at /var/run/s6/etc...exited 0.
[s6-init] ensuring user provided files have correct perms...exited 0.
[fix-attrs.d] applying ownership & permissions fixes...
[fix-attrs.d] done.
[cont-init.d] executing container initialization scripts...
[cont-init.d] 10-adduser: executing... 

-------------------------------------
          _         ()
         | |  ___   _    __
         | | / __| | |  /  \ 
         | | \__ \ | | | () |
         |_| |___/ |_|  \__/


Brought to you by linuxserver.io
We gratefully accept donations at:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid:    1001
User gid:    1001
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 30-config: executing... 
[cont-init.d] 30-config: exited 0.
[cont-init.d] 99-custom-scripts: executing... 
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] done.
[services.d] starting services
[services.d] done.
17:39:11 [WARNING ][deluge.i18n.util           :83  ] IOError when loading translations: [Errno 2] No translation file found for domain: 'deluge'

deluged.log:

17:39:09 [INFO    ][deluge.configmanager:52  ] Setting config directory to: /config
17:39:10 [INFO    ][deluge.core.daemon            :94  ] Deluge daemon 2.0.3-2-201906121747-ubuntu18.04.1
17:39:10 [INFO    ][deluge.core.core              :339 ] Successfully loaded session.state: /config/session.state
17:39:10 [INFO    ][deluge.core.core              :339 ] Successfully loaded session.state: /config/session.state.bak
17:39:10 [INFO    ][deluge.core.alertmanager      :148 ] Alert Queue Size set to 10000
17:39:11 [INFO    ][deluge.core.rpcserver         :402 ] Starting DelugeRPC server :58846
17:39:11 [INFO    ][twisted                       :154 ] Factory (TLS) starting on 58846
17:39:11 [INFO    ][twisted                       :154 ] Starting factory <twisted.internet.protocol.Factory object at 0x751202f0>
17:39:11 [INFO    ][deluge.core.daemon            :154 ] Deluge daemon starting...
17:39:11 [INFO    ][deluge.core.authmanager       :228 ] Opening auth for load: /config/auth
17:39:11 [INFO    ][deluge.core.authmanager       :236 ] Successfully loaded auth: /config/auth
17:39:11 [INFO    ][deluge.core.torrentmanager    :806 ] Loading torrent state: /config/state/torrents.state
17:39:11 [INFO    ][deluge.core.torrentmanager    :819 ] Successfully loaded /config/state/torrents.state
17:39:11 [INFO    ][deluge.core.torrentmanager    :1066] Opening torrents.fastresume for load: /config/state/torrents.fastresume
17:39:11 [INFO    ][deluge.core.torrentmanager    :1077] Successfully loaded torrents.fastresume: /config/state/torrents.fastresume
17:39:11 [INFO    ][deluge.core.torrentmanager    :672 ] Torrent ubuntu-18.04.2-live-server-amd64.iso from user "localclient" loaded
17:39:11 [INFO    ][deluge.core.torrentmanager    :885 ] Finished loading 1 torrents in 0:00:00.300878

For /downloads mount, I use a mounted disk, /etc/fstab relevant line:

UUID=8fee7f25-9060-466f-8c3f-6c3c7a1bce34	/media/data	auto	rw,user,auto	0	0

The partition is ext4, df -Th output:

/dev/sda1      ext4      1.8T   17G  1.7T   1% /media/data

mount's permissions are all relevant and set to the user (ls -al reports same user and group as for /config folder, and configs get populated without a hiccup)

Is there something in addition that I can run/validate? I failed to find logs that would provide relevant information regarding why permission was denied (previous issues at least had a subsequently listed subject/reason for permission denial)

Thanks, team linuxserver.io

Add 7z back.

A few versions back, tag 112 for example, i was able to run 7z to extract files with a script inside the container.

In the latest 7z is not there,there's p7zip but it's not the same.

It's possible to add back the 7z package?

SSL: CERTIFICATE_VERIFY_FAILED

I was getting this error when using the YARSS2 plugin:
ozo_exception when parsing rssfeed: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)>

I had to run this in the container context to fix it:
apk add --update ca-certificates openssl && update-ca-certificates

It would be good to add that to the dockerimage so it won't happen to anyone else

Deluge does not move completed torrents to defined directory

Using the docker container hosted here I am unable to get torrents to move to a different folder upon completion. This works in the software when not using this container without issue.

This is not a matter of not waiting long enough for the torrents to move successfully. This issue persists even weeks after completing a torrent.

I have also found that Auto-Adding torrents from a specified directory is not functioning correctly. I dropped a few hundred torrent files into the defined directory and, after an hour, only two had imported into Deluge and began downloading.

Completion status: https://i.imgur.com/KXL1XI7.png

Details (Depicting directory): https://i.imgur.com/Pl4Z95T.png

Settings (Depicting desired directory): https://i.imgur.com/7lPO92m.png

something wrong with peers tab deluge v2

linuxserver.io

Thanks, team linuxserver.io

hitting up the peers tab for a torrent on version 2 of deluge gives this error on a loop

11:06:24 [CRITICAL][twisted :154 ] Unhandled Error Traceback (most recent call last): File "/usr/lib/python3/dist-packages/twisted/protocols/basic.py", line 571, in dataReceived why = self.lineReceived(line) File "/usr/lib/python3/dist-packages/twisted/web/http.py", line 2013, in lineReceived self.allContentReceived() File "/usr/lib/python3/dist-packages/twisted/web/http.py", line 2104, in allContentReceived req.requestReceived(command, path, version) File "/usr/lib/python3/dist-packages/twisted/web/http.py", line 866, in requestReceived self.process() --- <exception caught here> --- File "/usr/lib/python3/dist-packages/twisted/web/server.py", line 195, in process self.render(resrc) File "/usr/lib/python3/dist-packages/twisted/web/server.py", line 255, in render body = resrc.render(self) File "/usr/lib/python3/dist-packages/deluge/ui/web/server.py", line 205, in render path = ('ui', 'data', 'pixmaps', 'flags', request.country.lower() + '.png') builtins.TypeError: can't concat str to bytes

locally i tried the testing repo for deluge with version 2.1x and it's the same there, so i think this is either something upstream in the code, or a missing dependency/python version issue.

this is more for information than anything else, expect to see bajillion posts about it imminently from updating users.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.