Note: this happens to me with all of my linuxserver containers…
I get this error message:
You are using docker;
download client SABnzbd places downloads in /pool/media/usenet/complete/tv
but this directory does not appear to exist inside the container. Review your remote path mappings and container volume settings.
But it does exist, and it does have access to it. I’m losing my mind over this.
This is my compose config:
homeserver@homeserver:/app$ docker compose config sonarr
services:
sonarr:
container_name: sonarr
depends_on:
prowlarr:
condition: service_started
required: true
sabnzbd:
condition: service_started
required: true
environment:
PGID: "2002" # Media
PUID: "3028" # Sonarr
TZ: X
UMASK: "007"
group_add:
- "2003" # Usenet
image: linuxserver/sonarr:latest
labels:
homepage.description: TV Shows Manager
homepage.group: Media Automation
homepage.href:
homepage.icon: sonarr.png
homepage.name: Sonarr
homepage.weight: "2"
homepage.widget.enableQueue: "false"
homepage.widget.key: X
homepage.widget.type: sonarr
homepage.widget.url:
kuma.media-automation.group.name: Media Automation
kuma.sonarr.http.name: Sonarr
kuma.sonarr.http.parent_name: media-automation
kuma.sonarr.http.url:
traefik.enable: "true"
traefik.http.routers.sonarr.entrypoints: websecure
traefik.http.routers.sonarr.rule: HostRegexp(`sonarr.X.com`)
traefik.http.routers.sonarr.tls: "true"
traefik.http.services.sonarr.loadbalancer.server.port: "8989"
logging:
driver: json-file
options:
max-file: "3"
max-size: 10m
networks:
default: null
restart: unless-stopped
volumes:
- type: bind
source: /etc/localtime
target: /etc/localtime
read_only: true
bind:
create_host_path: true
- type: bind
source: /pool/services/sonarr
target: /config
bind:
create_host_path: true
- type: bind
source: /pool/media
target: /pool/media
bind:
create_host_path: true
...
This is the users/groups on the host:
root@homeserver:/pool/media/usenet/complete/tv# id sabnzbd
uid=3026(sabnzbd) gid=2003(usenet) groups=2003(usenet)
root@homeserver:/pool/media/usenet/complete/tv# id sonarr
uid=3028(sonarr) gid=2002(media) groups=2002(media),2003(usenet)
This is proof that the directory (/pool/media/usenet/complete/tv) exists on the host:
root@homeserver:/pool# cd media/
root@homeserver:/pool/media# cd usenet/
root@homeserver:/pool/media/usenet# cd complete/
root@homeserver:/pool/media/usenet/complete# cd tv/
root@homeserver:/pool/media/usenet/complete/tv# ls -la
total 33
drwxrwx--- 2 sabnzbd usenet 2 Oct 20 18:32 .
drwxrwx--- 9 sabnzbd usenet 9 Oct 20 18:38 ..
This is proof that the directory exists inside sonarr’s container:
homeserver@homeserver:/app$ docker compose exec sonarr sh
root@9259da4cbbd7:/# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),11(floppy),20(dialout),26(tape),27(video),2002(abc),2003
root@9259da4cbbd7:/# cd /pool/media/usenet/complete/tv
root@9259da4cbbd7:/pool/media/usenet/complete/tv# ls -la
total 33
drwxrwx--- 2 3026 2003 2 Oct 20 18:32 .
drwxrwx--- 9 3026 2003 9 Oct 20 18:38 ..
This is proof that the directory exists inside the container from sonarr’s user’s perspective:
homeserver@homeserver:/app$ docker compose exec -u 3028 sonarr sh
abc@9259da4cbbd7:/$ id
uid=3028(abc) gid=2002(abc) groups=2002(abc),1000(users),2003
abc@9259da4cbbd7:/$ cd /pool/media/usenet/complete/tv/
abc@9259da4cbbd7:/pool/media/usenet/complete/tv$ ls -la
total 326
drwxrwx--- 12 3026 2003 12 Oct 20 18:57 .
drwxrwx--- 9 3026 2003 9 Oct 20 18:38 ..
What am I missing?!? This issue is starting to take its toll on me, haha…