Autor Thema: Anleitung - Sundtek Stick in Docker Container mit TVHeadend verfügbar machen  (Gelesen 713 mal)

Surfer2010

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
Hallo allerseits,

hier eine kleine Anleitung mit der man den Sundtek TV-Stick in einem Docker Container nutzen kann.

1.)   Nodes auf dem HOST erstellen (auf dem Hostsystem):

Einen persistenten Ordner erstellen der mit KEINEM „noexec“ in den Docker Container als   /config   eingebunden wird.
(in   /etc/openmediavault/config.xml   noexec kontrollieren)

cd <<config-folder on host>>
wget http://sundtek.de/media/sundtek_netinst_testing.sh
chmod 777 sundtek_netinst_testing.sh
./sundtek_netinst.sh –createnodes
(hier werden die –leeren- nodes erstellt, so dass sie in den Docker-Container integriert werden können)

2.)   Treiber für den Stick installieren (im Docker Container):

/config – Ordner ist ein persistenter Ordner mit exec-Permission
cd /config
./sundtek_netinst_testing.sh -docker -use-custom-path=/config


3.)   Container muss neu gestartet werden.
« Letzte Änderung: April 14, 2019, 01:15:02 Nachmittag von Surfer2010 »

rosenrot

  • Newbie
  • *
  • Beiträge: 17
    • Profil anzeigen
Re: Anleitung - Sundtek Stick in Docker Container mit TVHeadend verfügbar machen
« Antwort #1 am: August 01, 2019, 02:00:19 Nachmittag »
Vielen Dank für die Anleitung. Leider erhalte ich folgende Fehlermeldung bei der Installation im Docker Container:

adding /opt/bin to environment paths
unpacking...
checking system... overriding SYSTEM parameter with armsysv
installing (netinstall mode) ...
Downloading architecture specific driver ... armsysv
Download finished, installing now ...
Starting driver...
./sundtek_netinst_testing.sh: line 1773: /conf/opt/bin/mediasrv: not found
done.

Die Datei ist dort vorhanden, aber ich kann sie nicht ausführen. Auch nicht manuell.

root@cf85fef6ee45:/conf# ls -l /conf/opt/bin/
total 5245
drwxr-xr-x 2 root root    1024 Jul 31 16:35 audio
drwxr-xr-x 2 root root    1024 Jul 31 16:35 dvb
-rwxr-xr-x 1 root root     380 Jul 31 16:35 getinput.sh
-rwxr-xr-x 1 root root    1250 Jul 31 16:35 lirc.sh
-rwxr-xr-x 1 root root  357508 Jul 31 16:35 mediaclient
-rwsr-xr-x 1 root root 5006636 Jul 31 16:35 mediasrv
root@cf85fef6ee45:/conf# ./conf/opt/bin/mediasrv
bash: ./conf/opt/bin/mediasrv: No such file or directory

Ich verstehe dieses Problem nicht.

Ich bin im Chat!

Sundtek

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 8022
    • Profil anzeigen
Re: Anleitung - Sundtek Stick in Docker Container mit TVHeadend verfügbar machen
« Antwort #2 am: August 01, 2019, 04:43:00 Nachmittag »
Du hattest die falsche Version von dem Docker Image und die DVB Parameter falsch bei der Container Erstellung angegeben (laut der externen Container Dokumentation welche Du mir gezeigt hast war das aber in der Tat etwas verwirrend).
Failure is a good thing! I'll fix it

BoBeRzE

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
Re: Anleitung - Sundtek Stick in Docker Container mit TVHeadend verfügbar machen
« Antwort #3 am: August 17, 2019, 11:27:13 Vormittag »
Hallo,

ich nutze auch diesen Weg. Klappt im Moment ohne Probleme solange man den Host nicht neustartet.

ich habe via crontab -e das diese Zeile hinzugefügt:

@reboot sh /sundtek_netinst_testing.sh -createnodes

das Script liegt im Root-Verzeichnis vom Host. Leider klappt das ganze nicht.

Wie sollte man am besten vorgehen damit die Device-Nodes vor dem Start der Dockercontainer automatisch angelegt werden? Könnte man das nicht über udev regeln? So würden die Nodes auch angelegt werden wenn man einen neuen Tuner zur Laufzeit ansteckt?

Ich kenne mich unter Linux nicht wirklich aus aber wenn mir jemand von den Profis einen kleine Hilfestellung gibt bekomme ich das sicherlich hin :)

Vielen Dank

Nachtrag: ich nutze Ubuntu 18.04.3 LTS
« Letzte Änderung: August 17, 2019, 11:41:06 Vormittag von BoBeRzE »

BoBeRzE

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
Re: Anleitung - Sundtek Stick in Docker Container mit TVHeadend verfügbar machen
« Antwort #4 am: August 18, 2019, 12:51:15 Vormittag »
Ich habe es nun hinbekommen. Mit folgenden Befehlen (auf dem Host) klappt es nun:

1. Crontab als Root aufrufen

sudo crontab -e
2. Folgende Zeile einfügen (Es erscheint beim 1. Start von Crontab eine Auswahl welcher Editor verwendet werden soll. Ich habe nano genutzt)

@reboot /bin/mkdir -p /dev/dvb/adapter0 && /bin/mknod /dev/dvb/adapter0/frontend0 c 212 1
In meinen Tests ist es nicht notwendig gewesen die Nodes für dvr0 und demux0 ebenfalls anzulegen. Es muss zum Start des Containers einfach ein Gerät unter /dev/dvb/adapter0 (im Beispiel frontend0) existieren.

Im Container werden dann vom Treiber die ganzen Tuner unter /dev/dvb/adapter* angelegt. Ich nutze mehrere Tuner an meinem Docker-Host und es werden alle korrekt im Container angelegt.

Falls ich was vergessen habe, wäre es schön wenn die Profis melden :)