[Support] ich777 - Application Dockers


ich777

Recommended Posts

Just now, ich777 said:

Yep and eventually think about a IP based Power Socket like: Click

(I think based on where you live the name can be different I think Blitzwolf SHP2 is also a common name for them)

 

So you actually can turn off or better speaking power cycle the server if it hard locks or any other problem occours.

 

I actually flash those Power Sockets with a custom firmware named "espurna" but I think "tasmota" is more widespread (pretty straightforward).

 

I actually use something like that to "reboot" the server remotely..  (https://www.tp-link.com/ca/home-networking/smart-plug/hs103p2/) .. It works really well.. :)

Link to comment
On 2/1/2021 at 10:20 AM, ich777 said:

Please do a grafik.png.30587b093d75b0ca056d7d3ba3588928.png (force update) on the Docker page of the Container. I've implemented a new variable and also updated the template.

 

In your case (because you already have the template downloaded) you have to click on 'Add another Path, Port, Variable, Label or Device' and create it like in the screenshot, after you created it click on 'Add' and then 'Apply', then the schedule engine starts automatically:

grafik.png.ff20550fc210f12545926d585f350ebc.png

 Wow, thank you! That works like a charm!

  • Like 1
Link to comment
3 minutes ago, PsykoB said:

I actually use something like that to "reboot" the server remotely..  (https://www.tp-link.com/ca/home-networking/smart-plug/hs103p2/) .. It works really well..

Also nice, I'm more the do-it-yourself guy and like open source things or things that you can make open source (sonoff, Gosund, Blitzwolf,...)... :D

 

2 minutes ago, derferd1 said:

 Wow, thank you! That works like a charm!

Glad to hear, if you got any further questions, I'm always around... :)

  • Like 1
Link to comment
6 hours ago, ich777 said:

The first question is what does this scripts do? Do they need access to Unraid or are these random scripts that do "stuff" and are not related to Unraid and need only access to the Internet. :D

 

If the container get's updated, what will happen later that day all your installed dependencies will be wiped, but nothing that it saved in the '/debian' folder (Desktop, Documents, Settings,...) will be wiped, you can simulate a update of the container if you click on the button grafik.png.3eddd41fd11e99968aaf6d8f7a831658.png to simulate a update and what will be wiped and what not.

 

You can circumvent that all by simply creating a script (user.sh) with the contents (for example):



#!/bin/bash
apt-get update
apt-get -y install python3 python3-pip

 

Mount that to '/opt/scripts/user.sh' like this in the Docker template:

grafik.png.3c902f07405836b559601ab6d22c7df0.png

 

 

If you do it like this the container will check on every restart if the packages are installed (so after a update of the container itself the packages will be installed again to the container - keep in mind that the start will take a bit longer).

 

Hope that makes sense to you, feel free to ask if something is unclear. :)

 

This works wonderfully so far. What I am struggling with is to automate the python scripts (they fetch data from the internet and store them in influxdb btw if that is important). Under Linux I would use cron but I haven't really used it. There are some nice tutorials it but the questions is how to write that down in bash. So that it gets automatically entered every time. I guess I should use anacron? But I am total unsure how to add this via bash... Does anyone have an idea?

Link to comment
6 minutes ago, shrippen said:

Under Linux I would use cron but I haven't really used it.

In the container there isn't actually cron support but you can use a User Script on the Host (Unraid) and run a command or a python app or whatever.

Should the python script run on a certain time or should it run every n minutes/hours?

One way would be that you can do a while loop eventually and do a sleep after that, so the command executes and sleeps for n minutes/hours.

 

8 minutes ago, shrippen said:

they fetch data from the internet and store them in influxdb btw if that is important

You should be able to connect to the influxdb or am I wrong, I think you have a sperate influxdb Container installed or am I wrong?

Link to comment

Hi,

 

I installed the jDownloader2 and tried to route it to the VPN container through --net=container:jackettvpn everything works but the only issue I have is how can I change the jDownloader port from 8080 to 8686 while routing it to another container? I tried to search for a solution but somehow I cannot change the jDownloader port. 

 

Regards!

Link to comment
16 minutes ago, emersonicus said:

jDownloader port from 8080 to 8686 

Create a new variable in the Container template with the Key: 'NOVNC_PORT' and the Value: '8686'

(To create a new variable go to the Container template, click on 'Add another Path, Port, Variable, Label or Device', Select Variable and enter the Key and Variable).

 

That should do the trick. ;)

Link to comment
14 minutes ago, ich777 said:

Create a new variable in the Container template with the Key: 'NOVNC_PORT' and the Value: '8686'

(To create a new variable go to the Container template, click on 'Add another Path, Port, Variable, Label or Device', Select Variable and enter the Key and Variable).

 

That should do the trick. ;)

 

 

I already tried this but somehow the port still does not change.

 

2.PNG.afe78f7a522d70ad16c3d39beb757dd7.PNG

jDownloader

3.thumb.PNG.2e2db105303579fd2641f3575862dad0.PNGjackettVPN:

1.thumb.PNG.b0382ff769df6476e4c96c6e412dd98f.PNG

 

It only works when I use in jackett the 8080 port.

Edited by emersonicus
Link to comment
23 minutes ago, emersonicus said:

2.PNG.afe78f7a522d70ad16c3d39beb757dd7.PNG

 

This is just normal that jDownloader2 displays the wrong port, don't worry about that, if you set this variable just ignore this...

 

23 minutes ago, emersonicus said:

jDownloader

3.thumb.PNG.2e2db105303579fd2641f3575862dad0.PNG

Please delete the WebGUI entry since you don't need it and one thing to note, it's wrong, since you change the port in the container to Port 8686 with the variable but the port mapping is set to port 8080 in the container as far as I can tell from your screenshot.

 

23 minutes ago, emersonicus said:

jackettVPN:

1.thumb.PNG.b0382ff769df6476e4c96c6e412dd98f.PNG

As said above when you set the variable NOVNC_PORT to 8686 the port in the container is actually 8686 and not 8080, as above you set the jDownloader_PORT in the continer to 8080 and that cant work because you set the port to 8686.

 

Hope that makes sense to you...

 

EDIT: You have to set the port both host and container to 8686 if you set the variable NOVNC_PORT to 8686

Link to comment
13 minutes ago, JamesAdams said:

chromium we could make docker containers for electron apps no ?

Can you please be a little more precise? I'm not familar with electron apps.

What app do you need.

 

Generally it shpuld be possible but if the developer of such an app does not allow to turn of the chromium sandbox that's not possible and there is nothing I can do about it (the sandbox is not needed in a docker system because it's already a isolated system and if you are forced to enable the sandbox then you have to turn on previleged mode for the container and that's worse than turning off the sandbox).

Link to comment
9 minutes ago, ich777 said:

Can you please be a little more precise? I'm not familar with electron apps.

What app do you need.

 

Generally it shpuld be possible but if the developer of such an app does not allow to turn of the chromium sandbox that's not possible and there is nothing I can do about it (the sandbox is not needed in a docker system because it's already a isolated system and if you are forced to enable the sandbox then you have to turn on previleged mode for the container and that's worse than turning off the sandbox).

ok, I didn't know the sandbox mode and the electron apps are just chromium browsers on which you load a classic web page, it allows you to create software for pc without using C but only HTML, css and javascript

Link to comment
3 minutes ago, JamesAdams said:

visual studio code

Runs natively in a browser or am I wrong?

 

4 minutes ago, JamesAdams said:

Discord

Is designed differntly I think and is more or less a dedicated application and has a actual own dedicated windows that has to be streamed some where like a remote desktop... 

Link to comment
5 minutes ago, ich777 said:

Runs natively in a browser or am I wrong?

 

Is designed differntly I think and is more or less a dedicated application and has a actual own dedicated windows that has to be streamed some where like a remote desktop... 

No discord is a electron app

 

see all electron software as a browser on which a web page is displayed

Link to comment

So I had to create a Container for each app with a VNC viewer built in. It would not be very difficult because I think it's mostly the same but there would be no sound output.

 

Have you a special app in mind that I should try it?

Link to comment
1 minute ago, ich777 said:

So I had to create a Container for each app with a VNC viewer built in. It would not be very difficult because I think it's mostly the same but there would be no sound output.

 

Have you a special app in mind that I should try it?

I don't really know 😅

 

I'll watch tomorrow I'll go to bed there.

just a quick question, is it possible to have sound in the chromium container ?

Link to comment
21 hours ago, ich777 said:

This is just normal that jDownloader2 displays the wrong port, don't worry about that, if you set this variable just ignore this...

 

Please delete the WebGUI entry since you don't need it and one thing to note, it's wrong, since you change the port in the container to Port 8686 with the variable but the port mapping is set to port 8080 in the container as far as I can tell from your screenshot.

 

As said above when you set the variable NOVNC_PORT to 8686 the port in the container is actually 8686 and not 8080, as above you set the jDownloader_PORT in the continer to 8080 and that cant work because you set the port to 8686.

 

Hope that makes sense to you...

 

EDIT: You have to set the port both host and container to 8686 if you set the variable NOVNC_PORT to 8686

 

Thank you this worked well!

  • Like 1
Link to comment

Hello

I'm unable to get the Debian-Buster-Nvidia docker to work.
Specifically, I'm not able to connect to the novnc server, it simply gives me a 'failed to connect to server'

I'm running Unraid 6.9.0-rc2
I have installed this nvidia driver plugin:

https://forums.unraid.net/topic/98978-plugin-nvidia-driver/

the card and plugin seems to work just fine, and is currently being used in a Emby docker.

This is the log section from the debian-buster-nvidia docker:

---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---
---Trying to get Nvidia device address---
---Successfully got device ID: 02:00:0---
---Trying to get Nvidia driver version---

---Successfully got driver version: 455.45.01---

---Checking Xwrapper.config---
---Configuring Xwrapper.config---
---Version missmatch, deleting local Nvidia Driver v455.45---

rm: cannot remove '/debian/NVIDIA_455.45.run': No such file or directory
---Found NVIDIA Driver v455.45.01 localy, installing...---

---Configuring Locales to: en_US.UTF-8 UTF-8---
Generating locales (this might take a while)...
en_US.UTF-8... done
en_US.UTF-8... done
Generation complete.
---Checking configuration for noVNC---
Nothing to do, noVNC resizing set to default
Nothing to do, noVNC qaulity set to default
Nothing to do, noVNC compression set to default
---Starting...---
---Preparing Server---
---Checking for old logfiles---
---Checking for old lock files---
---Starting dbus service---
---dbus service started---
---Starting Xfce4---
---Starting x11vnc server---
---Starting noVNC server---
WebSocket server settings:
- Listen on :8080
- Flash security policy server
- Web server. Web root: /usr/share/novnc
- No SSL/TLS support (no cert file)
- Backgrounding (daemon)
---Starting Pulseaudio server---
----------------------------------------------------------------------------------------------------
Listing possible outputs and screen modes:

'Screen 0: minimum 8 x 8, current 1024 x 768, maximum 16384 x 16384
DP-0 connected primary 1024x768+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
1024x768 60.00*+
1600x900 59.82
1400x900 59.88
1368x768 59.88 59.85
1360x768 59.96 59.80
1280x800 59.91 59.81
1280x720 59.86 59.74
1152x864 60.00
1024x576 59.90 59.82
960x540 59.82 59.63
864x486 59.92 59.57
800x600 72.19 60.32 56.25
800x450 59.82
700x450 59.88
684x384 59.88 59.85
680x384 59.96 59.80
640x480 59.94
640x400 59.98 59.88
640x360 59.86 59.83
512x384 60.00
512x288 60.00 59.92
480x270 59.82 59.63
432x243 59.92 59.57
400x300 72.19
320x240 60.05
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 disconnected (normal left inverted right x axis y axis)
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 disconnected (normal left inverted right x axis y axis)
DP-6 disconnected (normal left inverted right x axis y axis)
DP-7 disconnected (normal left inverted right x axis y axis)'
----------------------------------------------------------------------------------------------------



---Looks like your highest possible output on: 'DP-0' is: '1600x900'---



---Trying to set the resolution to: '1600x900' on output: 'DP-0'---

-------------------------------------------------------------------------------
--------If you want to set the resolution manually please create a file--------
---------in /debian/.config/container.cfg with the following contents:---------
-------------------------------------------------------------------------------
Resolution: 1920x1080
Output: HDMI-0
--------------------------------------------------------------------------------
---Change the resolution and output to your specific configuration/preference---
--------------------------------------------------------------------------------

Current version of pixman: 0.36.0

Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.

Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.

(==) Log file: "/var/log/Xorg.0.log", Time: Thu Feb 4 08:11:54 2021
(==) Using config file: "/etc/X11/xorg.conf"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)


I believe the detected PCI ID is correct
The problem is that noVNC just gives me 'failed to connect to server'
I've tried installing the debian-buster without nvidia, and it works just fine.
Any ideas on what I'm doing wrong?
I'll be happy to provide additional info if needed.

 

Link to comment
7 minutes ago, LeetDonkey said:

I'm unable to get the Debian-Buster-Nvidia docker to work.

The log output from a first glance look OK.

 

Can you give me a little more details? First a screenshot of the template page would be nice.

 

Have you given the container a Custom IP?

Can you also post a screenshot of the error window from noVNC including the URL?

 

10 minutes ago, LeetDonkey said:

I believe the detected PCI ID is correct

Why are you sure? Can you go to Tools and System Devices in Unraid and tell me which ID the card has?

The container also sets the resolution this is also a good sign.

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.