Page 1 of 1

What is the correct way for dockering?

Posted: 25 May 2017, 12:00
by BrandonSk
Hello,

what is the correct way (or the most recommended way) to use dockers in cooperation with filebot.

Target:
Fully automated search, download, rename/move, and media center.

Now, if for each of the above I have a docker image (e.g. Sonarr, SABnzbd, Filebot, Plex), without the dockers I would use SABnzbd to call filebot amc script in the post-processing. I haven't found a way to call the filebot script, if each of the pieces (including filebot) run in their own container.

An obvious solution seems to be the use of filebot-watcher. But in several posts I have read that watching a directory for changes is not as preferred as calling the filebot script in post-download-processing.

Hence my question, is it in any and simple way possible or do I have to stick with watcher? (note: forking and modifying docker images is not a simple way for me)

Thank you very much for your ideas.
Brandon.

Re: What is the correct way for dockering?

Posted: 25 May 2017, 13:05
by rednoah
Well, the filebot command can easily be replaced with a docker container running said command.

e.g. call filebot directly:

Code: Select all

filebot -script fn:sysinfo
e.g. call filebot via docker:

Code: Select all

docker run -it -v $PWD:/volume1 -v data:/data rednoah/filebot -script fn:sysinfo
The main issue is probably how you can have your Sonarr/SABnzbd container call the filebot container because you'd have to make a call outside the container which probably isn't possible (by design).

Unfortunately, I don't have a solution for that. Your Sonarr/SABnzbd container would somehow have to be able to send a signal to the host, which in turn would run the filebot container.

The best solution is probably to have your host call filebot on a folder that only contains completed downloads on a schedule via cron (e.g. once or twice a day).

:idea: Having one container for Sonarr/SABnzbd/FileBot is probably the best solution, but you'd have to create your own docker container for that.

Re: What is the correct way for dockering?

Posted: 19 Jul 2017, 15:12
by SLiX
Hi, just an idea: what about a small REST API for docker-filebot? Do you have experience in that? I'm sure, this isn't done in a couple hours.
It would be nice to trigger filebot-watcher via HTTP. Or even better: POST Request to filebot-node (filebot config in Body of the request)

regards

Re: What is the correct way for dockering?

Posted: 19 Jul 2017, 15:20
by rednoah
Isn't that kinda what the FileBot Node Service is already doing for you? Though, I'd just run the docker and send commands via ssh, kinda like running commands on remote machines.

Re: What is the correct way for dockering?

Posted: 19 Jul 2017, 15:42
by SLiX
Sounds more like a 'dirty' solution, but I'll definetely look into this. Thanks for the hint!

I have a question regarding filebot-watcher and the config passing. Shall I open a new thread for that? Did not found a general docker thread

Re: What is the correct way for dockering?

Posted: 19 Jul 2017, 15:47
by rednoah
I'm not sure if a REST API would be any less dirty, certainly overkill. I'm no docker expert, but there should be some easy convenient way to call a command in a container and get back the console output.

You can make a docker thread. The watcher generally works exactly the same as the amc script, no more no less.

Re: What is the correct way for dockering?

Posted: 20 Jul 2017, 15:24
by BrandonSk
Hello both,

I admit I am not fully sure what you are talking about, but as long as it will work, then great.

In the meantime, the only solution, or rather a workaround I was able to do on Synology is this:
Sonarr, Radarr, SABnzbd is each running in its own container.
FileBot is installed directly on Synology as a package (could also be a container version, but for now I have the package).
I also installed WebStation package with PHP support.

Now, for each container I added a volume, which points to script folder. I have a separate shell script for movies, tvs, music and "auto" (or other). SABnzbd is configured to call corresponding script after download finishes.

The script is simple - it contains a curl command, calling a php page on the synology webstation. Each category has its own php page (although it could be just 1 page and pass a category parameter in the link, but I for testing I have separate pages).

The php page then executes another shell script which runs the appropriate filebot command.

I know there are security implications, especially as filebot has a sticky bit set and thus is always run as owner of filebot (not as http user). But since there is no outside access possible to my Syno, I am ok with that.

If anyone is interested, I can give some details.

Cheers,
B.

Re: What is the correct way for dockering?

Posted: 14 Mar 2021, 11:41
by synack
Hello

i'm facing the same problem, trying to call filebot from qBittorrent container.
I hope you're still around, i am definitly interested by your solution !

Thanks

Re: What is the correct way for dockering?

Posted: 17 Mar 2021, 12:50
by rednoah
Container A cannot call commands in Container B, just like Physical Machine A cannot call commands on Physical Machine B.

You therefore only have 2 options:
* Create your own container that includes all the software you need within a single container
* Configure Container A to SSH into Container B to make the call. Alternatively, Container B could host a web service that is triggered by Container A via curl. TL;DR if you have separate containers, then they can only communicated via the network