[Support] ich777 - Application Dockers


ich777

Recommended Posts

as i understand it: the click'n'load feature normally runs a javascript to do a HTTP POST to 127.0.0.1:9666.

... since our jDownloader Countainer is not running on localhost, we want to redirect all the traffic on this port to the unraid machine.

0.0.0.0 (listen an all nics) with port 9666 goes then to 192.168.1.254 (unraid) port 9666 which again forwards the traffic to the docker container at port 9666.

 

Unbenannt.PNG.7b4ba18f460bb0ad0d3787fd72a80ecf.PNG

 

i also tried forwarding the traffic directly to the docker ip, which should also work in theory because the corresponding route is set in the router, but did not work out either.

 

the show all command shows that the command is commited as intentioned.

PS C:\Windows\system32> netsh interface portproxy show all

Abfragen auf ipv4:             Verbinden mit ipv4:

Adresse         Anschluss   Adresse         Anschluss
--------------- ----------  --------------- ----------
0.0.0.0         9666        192.168.1.254   9666

 

//edit:

issuing the command

netsh interface portproxy add v4tov4 9666 192.168.1.254 9666 127.0.0.1

to change the 0.0.0.0 listen address to 127.0.0.1, does not make it work.

changing the destination address to the container ip also not, unfortunately. 😞

 

//edit2:

i just tried telneting into 172.17.0.15:9666 with putty, and this does not work either (note: ping to this ip does work), so i assume the socket isn't even opened and therefore the click'n'load feature somehow not activated.

 

Edited by Greyberry
Link to comment
28 minutes ago, Greyberry said:

/edit2:

i just tried telneting into 172.17.0.15:9666 with putty, and this does not work either (note: ping to this ip does work), so i assume the socket isn't even opened and therefore the click'n'load feature somehow not activated.

That can't work.

You have telnet to 192.168.1.254 but i think telnet is on another port.

 

I will look into it eventually this evening or tomorrow.

 

This is the last day of my vacation. ;)

 

30 minutes ago, Greyberry said:

as i understand it: the click'n'load feature normally runs a javascript to do a HTTP POST to 127.0.0.1:9666

Yep, that's why you have to set it in the jdownloader settings to not only listen to localhost.

 

32 minutes ago, Greyberry said:

0.0.0.0 9666

This entry is wrong since you must forward it to the containers ip/port

 

You can also try to assign a static ip on your local network to the jdownloader container so you don't have to forward anything (if you assign a static ip all ports are available by default).

Link to comment
6 minutes ago, ich777 said:

That can't work.

You have telnet to 192.168.1.254 but i think telnet is on another port.

it should work ... don't expect a reasonable output or the opposite closing the connection again after no valid protocol input, but connecting with a socket of any kind should work, just for debugging purposes. to see if the socket is open.

 

11 minutes ago, ich777 said:

I will look into it eventually this evening or tomorrow.

 

This is the last day of my vacation.

would be cool. 🙂 so then happy last vacation-day.

 

12 minutes ago, ich777 said:

Yep, that's why you have to set it in the jdownloader settings to not only listen to localhost.

yes, i did this in the advanced settings.

 

13 minutes ago, ich777 said:

This entry is wrong since you must forward it to the containers ip/port

i am pretty sure it is right. note that this is NOT the destination address. 0.0.0.0 in this case is the listen-address, which represents all nics of the machine. i also tried 127.0.0.1 as listen-address but did not work out either.

as for the destination address i tried the unraid-ip and the container-ip, both of which did not work out.

 

at this point i think there is something going on with the container, that the feature is not started or not built into this jdownloader2 build?

Link to comment
7 minutes ago, Greyberry said:

it should work ... don't expect a reasonable output or the opposite closing the connection again after no valid protocol input, but connecting with a socket of any kind should work, just for debugging purposes. to see if the socket is open.

No it can't work since this is the IP inside the container and is not reachable.

You also can not connect to an internal IP (LAN) if you want to connect from the internet to some service, you have to connect to the external IP and the port that is forwarded, same principle.

 

I will look into that.

Link to comment
16 minutes ago, ich777 said:

No it can't work since this is the IP inside the container and is not reachable.

You also can not connect to an internal IP (LAN) if you want to connect from the internet to some service, you have to connect to the external IP and the port that is forwarded, same principle.

sorry i have to strongly disagree with that. the reason why your internal ip's are not reachable from the internet are that (a) private ips are not routed in the internet (b) your router most likely does NAT in the IPv4 spectrum.

unraid does not make any Network Address Translation, but the docker networktraffic (and IP-Addresses) is bridged(!) to the networkinterface. Therefore the ip is indeed reachable. I am able to ping the docker-address 172.17.0.15 and also connect my browser directly to 172.17.0.15:8080.

The issue most people run into is that their standard-gateway does not know how to route their docker-subnet (172.17.0.0/12), but i added the route accordingly as a static route. so this does work. 👍

Edited by Greyberry
Link to comment
4 minutes ago, Greyberry said:

sorry i have to strongly disagree with that. the reason why your internal ip's are not reachable from the internet are that (a) private ips are not routed in the internet (b) your router most likely does NAT in the IPv4 spectrum.

Yep and that's what Unraid does with the Docker network it NAT's it through. ;)

 

5 minutes ago, Greyberry said:

The issue most people run into is that their standard-gateway does not know how to route their docker-subnet (172.17.0.0/12), but i added the route accordingly as a static route. so this does work.

And that's why I say it's not possible (most people here - End Users - have not set that up like in your case).

Keep it simple here on the forums ;)

If someone reads that and doesn't know the background it could cause confusion all over the place...

Link to comment
19 minutes ago, ich777 said:

Yep and that's what Unraid does with the Docker network it NAT's it through.

no, it is bridged and not NATed. big difference.

 

19 minutes ago, ich777 said:

And that's why I say it's not possible (most people here - End Users - have not set that up like in your case).

Keep it simple here on the forums ;)

If someone reads that and doesn't know the background it could cause confusion all over the place...

yes and no. if people do not know what they are doing, and how everything is working together, they can learn. 🙂

Edited by Greyberry
  • Thanks 1
Link to comment

okay this was the solution for me:

  • stop the container
  • delete everything except the "cfg" folder in the jdownloader2 program folder (which is mounted in appdata)
  • start the container again and let it update / reload the program

it seems that my installation was in a bad state.

maybe it would be worth considering only mounting the cfg folder into appdata and reload the program at each start, but i dont know.

 

👍🙂

  • Like 1
Link to comment
2 hours ago, Greyberry said:

no, it is bridged and not NATed. big difference.

 

yes and no. if people do not know what they are doing, and how everything is working together, they can learn. 🙂

Can't find the issue but found a solution that it works again... :D

 

  1. Stop the container
  2. Delete all contentens in the jdownloader2 directory that's in your appdata folder (also the hidden files and folders)
  3. If you want to keep your accounts copy these files from the /cfg directory over to your local computer: org.jdownloader.settings.AccountSettings.accounts.ejs & org.jdownloader.settings.AccountSettings.json
  4. Start the container and wait for it to finish everything
  5. Go to the advanced tab and type in 'cnl' and uncheck the box at 'RemoteAPI: Extern Interface Localhost Only'
  6. Stop the container and put the two files saved erlier to your /cfg directory (skip this step if you don't backed up these two files)
  7. Start the container again
  8. In Windows type in: 'netsh interface portproxy add v4tov4 9666 IP_OF_THE_CONTAINER 9666 127.0.0.1' (in your case 192.168.1.254)
  9. Test it with a Click'n'Load file or enter in your browser on Windows 'http://127.0.0.1:9666/flash' and you should be greeted with a page that says 'JDownloader'

 

(All assumed that you allready created a port in the template from 9666:9666)

 

Don't know what caused the issue but found a few threads with a title like 'Click'n'Load stopped working' and in the most cases a fresh installation solved the issue... :D

 

Hope this also works for you ;)

  • Like 1
Link to comment
48 minutes ago, frakman1 said:

@ich777 Is the "Pushover-On-Start" container supposed to exit as soon as it finishes the startsup and sending of the notification?

Yes, I created it mainly for a headless machine (also unraid) where I use the graphics card to pass through to LibreELEC and/or Windows and I turn that two machines with wake on LAN on and I didn't know if Unraid was already fully startet.

I circumvent that with this co tainer that sends a message when the Docker service is startet (usually when Unraid finished booting).

Also use this on my dev machine.

Link to comment
5 minutes ago, frakman1 said:

Very nice. I was just concerned with the state of the container that's all. Wasn't sure if it was meant to remain "Up" or if it should "Exit". Maybe you can include that in the Description to remove any doubt.

Thank you for the heads up, will do that...

But you have to turn on Autostart for this to work.

Link to comment
40 minutes ago, Kira said:

I am using the docker Zabbix server, how to i setup Zabbix server to work with SNMP?

I personally don't use Zabbix but please referr to this page: Click

(This is a totally Zabbix related question and should be posted on ther forums or can be looked up in their documentation)

Link to comment
1 hour ago, ich777 said:

I personally don't use Zabbix but please referr to this page: Click

(This is a totally Zabbix related question and should be posted on ther forums or can be looked up in their documentation)

I finally figure out, it was just a simple add interface. 

  • Like 1
Link to comment

Hey Mate, I've just started looking into your "Debian Buster - Nvidia" container and I would like to use this connected directly to 1 source while being able to stream to other devices in my house. Because it will be connected directly to 1 device, I'd love the ability to passthrough Bluetooth and even an Xbox controller adapter, is this possible? Also, (I saw it in the description but I didn't quite understand) what would be the best procedure to install Lutris and have it persist over container updates?

 

Great work on this, I think it has massive potential to become the perfect Steam source for unraid, it could even be worth looking at something like this: steamos-ubuntu to run a SteamOS box with unraid in the background.

 

Link to comment
3 hours ago, Trozmagon said:

Hey Mate, I've just started looking into your "Debian Buster - Nvidia" container and I would like to use this connected directly to 1 source while being able to stream to other devices in my house. Because it will be connected directly to 1 device, I'd love the ability to passthrough Bluetooth and even an Xbox controller adapter, is this possible? Also, (I saw it in the description but I didn't quite understand) what would be the best procedure to install Lutris and have it persist over container updates?

 

Great work on this, I think it has massive potential to become the perfect Steam source for unraid, it could even be worth looking at something like this: steamos-ubuntu to run a SteamOS box with unraid in the background.

 

It should be possible but since I've got so many projects besides this container I've barely got time to fix the controller issue...

Also posted a few issues on Github but no one answered my questions to that day...

 

Look at this post (the first part) how to add such a script and well, here is the script... :D : debian-nvidia.sh

 

 

(Hope the script works, if it doesn't please report back)

 

Wait what you mean SteamOS on top of Unraid with SteamOS in the background... :D

This should be also possible but I've designed the container as a Streaming client in the first place (except for the not working controller inputs from remote machines - but you can map key strokes to the controller for now).

If someone can help me out with the controller problem or will ever answer the Github questions I would really aprreciate that... :)

Link to comment
13 hours ago, Trozmagon said:

Also, (I saw it in the description but I didn't quite understand) what would be the best procedure to install Lutris and have it persist over container updates?

 

Oh I forgot to say, in my case proton (ptovided by steam and also persistent) works best in my case...

Link to comment
17 hours ago, ich777 said:

It should be possible but since I've got so many projects besides this container I've barely got time to fix the controller issue...

Also posted a few issues on Github but no one answered my questions to that day...

 

Look at this post (the first part) how to add such a script and well, here is the script... :D : debian-nvidia.sh

 

 

(Hope the script works, if it doesn't please report back)

 

Wait what you mean SteamOS on top of Unraid with SteamOS in the background... :D

This should be also possible but I've designed the container as a Streaming client in the first place (except for the not working controller inputs from remote machines - but you can map key strokes to the controller for now).

If someone can help me out with the controller problem or will ever answer the Github questions I would really aprreciate that... :)

Thanks mate, I'll have a look at the script later on tonight. I'm not super familure with docker or linux development but I am a web/app dev so I should be able to figure it out to give you a hand, do you have any tutorials off the top of your head where I could get started? Also do you have your sources public? I found your GitHub but the closest I could find was "docker-debian-buster" but there's no reference to nvidia or steam in there.

 

8 hours ago, ich777 said:

Oh I forgot to say, in my case proton (ptovided by steam and also persistent) works best in my case...

I want to install Lutris because if gives you remote management of non Steam games, especially good for emulation :).

  • Like 1
Link to comment
6 minutes ago, Trozmagon said:

I should be able to figure it out to give you a hand

That is really appreciated! :)

 

7 minutes ago, Trozmagon said:

Also do you have your sources public?

Yes everything I publish is open source and everybody can modify or fork it.

Actually it's a branch in the 'docker-debian-buster'... :D

github.com/ich777

 

8 minutes ago, Trozmagon said:

I want to install Lutris because if gives you remote management of non Steam games, especially good for emulation :).

Oh okay, hope the script works for this, doesn't test it... :P

Link to comment

Trying to use the TheLounge docker, but the log is showing this, and the gui can't be reached.

 

---Checking if UID: 99 matches user---
---Checking if GID: 100 matches user---
---Setting umask to 000---
---Checking for optional scripts---
---No optional script found, continuing---
---Starting...---
---Version Check---

---Version missmatch, installed v4.1.0, downloading and installing latest v4.2.0...---

---Something went wrong, can't download TheLounge v4.2.0, putting container into sleep mode!---

 

Link to comment
10 minutes ago, mikeydk said:

Trying to use the TheLounge docker, but the log is showing this, and the gui can't be reached.

 


---Checking if UID: 99 matches user---
---Checking if GID: 100 matches user---
---Setting umask to 000---
---Checking for optional scripts---
---No optional script found, continuing---
---Starting...---
---Version Check---

---Version missmatch, installed v4.1.0, downloading and installing latest v4.2.0...---

---Something went wrong, can't download TheLounge v4.2.0, putting container into sleep mode!---

 

Yes I know, fixing all my containers now, will take a few hours.

I will report back when I'm finished. ;)

  • Like 1
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.