Closed gatsby0121 closed 4 years ago
the reference to SERVICE_NAMES
is specific to docker-compose. When you set that variable via the environment field in the compose file like
- SERVICE_NAMES=filebot sonarr radarr bazarr jackett announcedd heimdall tautulli plex
for instance, this makes the filebot
service, sonarr
, radarr
, etc. all available via their single word domain (e.g. you can make a web request to filebot:<port>
from within containers that are proxying through the wireguard
container, like transmission
and nzbget
)
dnsmasq is automatically configured by the wireguard
container so you shouldn't need to make any manual changes to dnsmasq.
Go to the EXTENSION SCRIPTS
setting in nzbget. If you click on that Choose button next to the Extensions field, do you see an option to choose nzbget-postprocess? If so, select it. If not, could you try just manually adding nzbget-postprocess.sh in the Extensions field and give that a shot? I think that's the root cause. Apparently I forgot to make the container auto-select the post processing script, and I think that's the root cause here as well.
It's not populated. I manually added it, but it's not working. Where is that script? I did a find on the folders, but it's not there.
Hmm it should be copied to /usr/local/bin
by the container. Do you see it there?
If you go to Settings > PATHS and scroll down to ScriptDir, is it set to /usr/local/bin
? If not, set that as well and then it should start working.
It was set to ${MainDir}/scripts After changing to /usr/local/bin it showed up in the list and runs the post processing.
First, thank you for all your help, it's much appreciated.
The postprocessing fired, but nzbget outputs this error, and the file doesn't get moved:
nzbget | [INFO] nzbget-postprocess: File does not exist: /share/downloads/completed/tv/******showname******
nzbget | [INFO] nzbget-postprocess: No files selected for processing
nzbget | [INFO] nzbget-postprocess: Done ¯\_(ツ)_/¯
100 961 100 827 100 134 49 7 0:00:19 0:00:16 0:00:03 179
nzbget | [INFO] nzbget-postprocess: + '[' 0 '=' 0 ]
nzbget | [INFO] nzbget-postprocess: + exit 93
nzbget | [INFO] Post-process-script nzbget-postprocess.sh for ******showname****** successful
nzbget | [INFO] Collection ******showname****** added to history
All right, we're in the home stretch.
If you exec into the filebot container (docker exec -it filebot /bin/bash
) what is your directory structure in there? The nzbget and filebot containers need to have matching paths since nzbget is telling filebot where to find the files. If you're in the filebot
container and see that /share/downloads/completed/tv
is not available, filebot won't be able to find any files.
My guess is that this is the issue:
If you look at the compose file, the nzbget service by default mounts
- ${DOWNLOAD_DIR}/nzb:/downloads/nzb
which means the downloads
directory isn't actually getting mounted, just the subdirectory nzb
is.
To fix this, you can either go back to PATHS
and make your MainDir be /downloads/nzb
, or you can change the volume mount in the compose file to be
- ${DOWNLOAD_DIR}:/downloads
IIRC the reason I made it download to a subdirectory was to avoid possible collisions with transmission downloads, but I think it would be fine since transmission downloads to complete
and incomplete
whereas nzbget downloads to completed
and intermediate
.
Clearly I need to rework this nzbget container to get some sane defaults written in the config. I've been running this for so long I completely forgot that I had manually configured nzbget at some point. Sorry for the confusion!
Thank you so much for your help! Looks like it's working now.
I can do a search with sonarr, it then forwards tthe nzb request to nzbget, which downloads the file and says it's unpacking it, but it doesn't show up in completed or plex tv shows folder.
I think my problem is from the dnsmasq part. I think it's just not seeing the file when it's done.
I'm seeing this error in the netdata logs:
netdata | 2020-06-04 15:26:31: cgroup-name.sh: WARNING: cannot find the name of docker container '3893f7e2546c568112cd8d90cc7823fea957f9d236a970ef6c786adfdf0d6b23'
I'm not sure how to implement your dnsmasq.conf recommendation (option 3, which I've pasted below)
Can you give an example entry for dnsmasq.d in reference to this comment? And is this applied in the host?
If SERVICE_NAMES is set (a list of services to make available from within the wireguard network), write each service name individually to /etc/dnsmasq.conf to force 127.0.0.11 as the DNS server for each service address. This is nice because you don't have to write an alias for each service to make available, but you do need to list out all of the services. A sample SERVICE_NAMES variable is set in the docker-compose.yml file. It shouldn't need to be modified, but if there is a reason to, open an issue and I can make it pull from the .env file.