Jeedom sous docker probleme

Bonjour @Didier3L,

Désolé de vous dérangé, j’ai suivi à la lettre votre tuto très détaillé :

Et lorsque je lancer la commande
docker-compose up -d

J’ai le message d’erreur suivant :
Creating jeedom-v4 … error
ERROR: for jeedom-v4 Cannot start service jeedom: b’linux runtime spec devices: error gathering device information while adding custom device « /dev/ttyUSB0 »: no such file or directory’
ERROR: for jeedom Cannot start service jeedom: b’linux runtime spec de vices: error gathering device information while adding custom device « / dev/ttyUSB0 »: no such file or directory’
ERROR: Encountered errors while bringing up the project.

A priori un probleme de port USB ?

Pourtant j’ai bien indiqué dans le fichier docker-compose:
devices:
- « /dev/ttyUSB0 »
- « /dev/ttyUSB1 »
- « /dev/ttyACM0 »

Car j’ai le meme chose que vous a priori (j’ai un DS218+ pour info)

[    0.000000] Command line: root=/dev/md0 earlyprintk=apl console=ttyS2,115200n8 ihd_num=2 netif_num=1 HddHotplug=1 SataPortMap=21 syno_hw_version=DS218+ vender_format_version=2 syno_hdd_detect=18,179,176,175 syno_hdd_enable=21,20,19,9 syno_usb_vbus_gpio=11@0000:00:15.0@1,10@0000:00:15.0@2,13@0000:00:15.0@3 sn=1880PCN917719 macs=00113299ce4f
[    0.000000] Kernel command line: root=/dev/md0 earlyprintk=apl console=ttyS2,115200n8 ihd_num=2 netif_num=1 HddHotplug=1 SataPortMap=21 syno_hw_version=DS218+ vender_format_version=2 syno_hdd_detect=18,179,176,175 syno_hdd_enable=21,20,19,9 syno_usb_vbus_gpio=11@0000:00:15.0@1,10@0000:00:15.0@2,13@0000:00:15.0@3 sn=1880PCN917719 macs=00113299ce4f
[    5.153934] dw-apb-uart.1: ttyS0 at MMIO 0x9131c000 (irq = 44, base_baud = 115200) is a 16550A
[    5.181277] console [ttyS2] enabled
[    5.204100] dw-apb-uart.2: ttyS1 at MMIO 0x9131e000 (irq = 45, base_baud = 115200) is a 16550A
[    5.205186] console [ttyS2] disabled
[    5.205394] dw-apb-uart.3: ttyS2 at MMIO 0x91320000 (irq = 6, base_baud = 115200) is a 16550A
[    5.205410] console [ttyS2] enabled
[    5.212090] dw-apb-uart.4: ttyS3 at MMIO 0x91322000 (irq = 47, base_baud = 115200) is a 16550A
[   32.427971] synobios open /dev/ttyS1 success
[   50.889926] synobios open /dev/ttyS1 success
[   52.479790] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB0
[   52.559844] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB1
[   52.891985] cdc_acm 1-1:1.0: ttyACM0: USB ACM device
[  131.139776] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from ttyUSB0
[  131.156048] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from ttyUSB1

Merci de votre aide

Lemars

Bonjour

Il faut mettre que les ports USB vraiment utilisés

image

Bonjour,
Merci de votre aide

J’ai actuellement les 3 ports USB utilisés sur mon NAS. Dont un port USB a un hub USB branche dessus qui aliment 2 clé + l’onduleur en USB pour le NAS.
Et je souhaite que docker puisse aussi les utiliser les 3.

Du coup je pensais avoir fait bon en indiquant comme vous
devices:
- « /dev/ttyUSB0 »
- « /dev/ttyUSB1 »
- « /dev/ttyACM0 »

Car j’ai trouvé les 3 meme ports USB que vous quand je fais :

[    5.153934] dw-apb-uart.1: ttyS0 at MMIO 0x9131c000 (irq = 44, base_baud = 115200) is a 16550A
[    5.181277] console [ttyS2] enabled
[    5.204100] dw-apb-uart.2: ttyS1 at MMIO 0x9131e000 (irq = 45, base_baud = 115200) is a 16550A
[    5.205186] console [ttyS2] disabled
[    5.205394] dw-apb-uart.3: ttyS2 at MMIO 0x91320000 (irq = 6, base_baud = 115200) is a 16550A
[    5.205410] console [ttyS2] enabled
[    5.212090] dw-apb-uart.4: ttyS3 at MMIO 0x91322000 (irq = 47, base_baud = 115200) is a 16550A
[   32.427971] synobios open /dev/ttyS1 success
[   50.889926] synobios open /dev/ttyS1 success
[   52.479790] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB0
[   52.559844] usb 1-3: GSM modem (1-port) converter now attached to ttyUSB1
[   52.891985] cdc_acm 1-1:1.0: **ttyACM0**: USB ACM device
[  131.139776] option1 ttyUSB0: GSM modem (1-port) converter now disconnected from **ttyUSB0**
[  131.156048] option1 ttyUSB1: GSM modem (1-port) converter now disconnected from **ttyUSB1**

Alors du coup je pensais juste faire le copié collé précédent ?

Désolé je ne comprends pas tout dans ces lignes de commande… alors j’essaye de copié au mieux et en étant le plus logique dans la transposition du copié / collé

merci à vous pour aide et votre patience.

Lemars

Bonjour @Didier3L
Je me demande une chose : actuellement mes 4 dongles USB sont utilisés (montés) par ma machine virtuelle
ZWave
Rfxcom
EnOcean
et Clé Hawaei 220 pour SMS

Ne faut il pas les détacher de la machine virtuelle avant que je n’applique la commande ?
dmesg |grep tty

Je suis bloqué et perdu, désolé de mon inexpérience. Je n’ai pas trouvé d’infos sur internet pour comprendre les ports USB qui sont raccordés ou non à mon NAS. Je pensais qu’il fallait les mettre tous pour les avoir ensuite dans Docker

image

Effectivement il faut choisir entre l’un des deux systèmes

Regarde dans le jeedom de ta VMM et chaque plugin sur quels ports ils sont branché
image
image

merci pour ces précieuses infos : sur mon NAS DS218+ j’ai
port USB avant clé HUAWEI220
port USB arrière clé ZWAVE (vue de l’arrière port USB de gauche)
port USB arrière HUB USB (vue de l’arrière port USB de droite) avec :
Clé RFXCOM
Clé Enocean
UPS --> pour le NAS

Et malheureusement quand j’ai installé ces clé sur les plugin j’ai sélectionné port Auto… Mais en faisant mine de sélectionner la clé on peut voir ceci :
Capture1
Alors cela ne m’arrange pas trop car c’est ok pour
/dev/ttyUSB0 clé HUAWEI nom: HUAWEI220
/dev/ttyUSB1 clé RfxCom nom: RFXCOM
mais pour
/dev/ttyUSB??? clé Enocean nom: ???
/dev/ttyUSB??? clé zwave nom: ???

Je ne comprends pas pourquoi mes clés Enocean et ZWave n’apparaissent pas ?

Pour la clé Enocean c’est peut etre le fait d’etre sur un HUB USB : j’ai donc positionné sur « FDTI FT232R USB UART USB3) » et ca a l’air de fonctionné !

Mais quid de la clé ZWAVE : j’ai testé au pif sur le dernier dispo qui est la ttyACM0 et cela fonctionne !

Bref je me retrouve avec cette config de ports USB utilisés :
/dev/ttyUSB0 clé HUAWEI nom: HUAWEI220
/dev/ttyUSB1 clé RfxCom nom: RFXCOM
/dev/ttyUSB3 clé Enocean nom: FTDI FT232R USB UART
/dev/ttyACM0 clé zwave nom: pas de nom !

Du coup merci de votre aide je vais pouvoir continuer en modifiant le fichier docker-compose.yalm avec :
- « /dev/ttyUSB0 »
- « /dev/ttyUSB1 »
- « /dev/ttyUSB3 »
- « /dev/ttyACM0 »

Ma « petite » dernière question est :
pour faire la suite de l’installation (commande « docker-compose up -d ») il faut donc
« démonter » les clés de la VM
puis lancer la commande « docker-compose up -d »
Mais est ce qu’il sera possible à la suite de l’installation de remettre en service les clé USB sur ma VM ? Car je dois m’absenter quelques jours mercredi et je souhaite avoir Jeedom sur ma VM qui fonctionne avec ses doncgle USB fiabilisé : je ferais tourner Jeedom sur Docker ensuite.

Merci encore

Lemars

Je viens de tenter
root@DS_LS:/volume1/docker/jeedom-v4# docker-compose up -d

et a nouveau je suis bloque avec l’erreur suivante :

Removing jeedom-v4
Recreating b7795f1a2baa_jeedom-v4 … error

ERROR: for b7795f1a2baa_jeedom-v4 Cannot start service jeedom: b’linux runtime spec devices: error gathering device information while adding custom device « /dev/ttyUSB3 »: no such file or directory’

ERROR: for jeedom Cannot start service jeedom: b’linux runtime spec devices: error gathering device information while adding custom device « /dev/ttyUSB3 »: no such file or directory’
ERROR: Encountered errors while bringing up the project.

Cela vient de l’USB3 qui est la clé qui est cablé sur le HUB USB (ce n’est pas une « vraie » adresse USB ?)

comment peut on faire ?

je viens de tester : chmod 777 /dev/tty*

Mais ne fonctionne pas toujours la meme erreur

J’ai supprimé le USB3 qui est a priori non physique

  • « /dev/ttyUSB0 »
  • « /dev/ttyUSB1 »
  • « /dev/ttyACM0 »

et cela fonctionne !

Mon conteneur est bien créé mais il ne fait que de se lancer… puis s’arrete… puis redémarre … etc
Je viens de l’arreter
Capture1

Tu as bien un HUB usb alimenté ?

Modifie les lignes

devices:
             - "/dev/ttyUSB0:/dev/ttyUSB0"
             - "/dev/ttyUSB0:/dev/ttyUSB1"
             - "/dev/ttyACM0:/dev/ttyACM0"

:small_orange_diamond: Éteindre le NAS
:small_orange_diamond: Débrancher l’alimentation du Hub USB
:small_orange_diamond: Rebrancher l’alimentation du Hub USB
:small_orange_diamond: Allumer le NAS

Bonjour,
Merci pour votre aide.
Oui mon hub USB est bien alimenté.
Je teste à mon retour dimanche soir
A bientot
Lemars

Bonjour

J’ai bien modifié avec :
- « /dev/ttyUSB0:/dev/ttyUSB0 »
- « /dev/ttyUSB0:/dev/ttyUSB1 »
- « /dev/ttyACM0:/dev/ttyACM0 »

Puis appliqué la dernière mise a jour du NAS
Eteint le NAS
Débranché le port USB du HUB USB et débranché son alim aussi
Débranché le port USB du HUB USB et rebranché son alim
Allumé le NAS

Arret de la VM et démonté les 4 dongle USB

Puis commande docker-compose build

Nombreux Docker intermédiaires …

Résultat :
Successfully built 717a420d9a03
Successfully tagged jeedom-v4_jeedom:latest


          Vérification du processus de l'installation de Jeedom

commande docker-compose up -d

et la probleme :

root@DS_LS:/volume1/docker/jeedom-v4# docker-compose up -d
Creating jeedom-v4 … error
ERROR: for jeedom-v4 Cannot start service jeedom: b’linux runtime spec devices: error gathering device information while adding custom device « /dev/ttyACM0 »: no such file or directory’
ERROR: for jeedom Cannot start service jeedom: b’linux runtime spec devices: error gathering device information while adding custom device « /dev/ttyACM0 »: no such file or directory’
ERROR: Encountered errors while bringing up the project.

Je ne sais pas quoi faire

C’est un des port USB qui pose problème ?

Quelles sont les clés USB branchées
Pour quel plugin ?

Les 4 clés USB branchées sont :

  • ZWave Aeotec ZW090 « Z-Stick » GEN5
  • Rfxcom 433XL
  • EnOcean Dongle USB310
  • et Clé Huawei Unlocked E220

Et elles sont raccordées de la manière suivante :

  • port USB avant du NAS : clé HUAWEI E220
  • port USB arrière clé ZWAVE (vue de l’arrière port USB de gauche)
  • port USB arrière HUB USB (vue de l’arrière port USB de droite) avec :
    - Clé RFXCOM
    - Clé Enocean
    - branchement USB pour l’UPS --> pour le NAS (non géré par la VM)

J’utilise donc le plugin ZWAve + RFxCom + Encocean + plugin SMS

Merci

4 clés et seulement 3 mappage ?

Tu peux également vérifier si ton conteneur est bien paramétré avec la commande

docker inspect -f <NOM_CONTENEUR_DOCKER>

Bonjour,
Mon Hub USB est un Anker Hub USB 3.0 Ultra Fin 4 Ports avec Chargeur USB 10 W
acheté ici :
https://www.amazon.fr/gp/product/B0192W3HX8/ref=ppx_yo_dt_b_asin_title_o04_s00?ie=UTF8&psc=1
Et c’est un USB 3.0 …

Impossible donc d’installer Docker avec ce hub USB3

Mais cela m’a été utile car sur la VM j’ai pu choisir USB3.0 et avoir la possibilité de brancher 4 clés (alors qu’en USB2 c’est moins)

Je pense acheter du coup un nouveau hub USB alimenté et en USB2 pour finir cette installation :

Lequel me conseillez vous ?
J’achète le meme que vous si vous en avez un, au moins je certain qu’il fonctionne !

merci

Essaye déja avec ton HUB USB 3
Pourquoi 4 clé et seulement 3 mappage ?

Bonjour
Je viens de re tester : j’ai démonté les clés USB + eteint le NAS + débranché le ub
J’ai modifier le docker compose avec mes 4 portS USB (j’avais une coquille d’ailleurs précédemment sur un des 3)
Lancer la commande docker-compose up -d avec devices:
- « /dev/ttyUSB0:/dev/ttyUSB0 »
- « /dev/ttyUSB1:/dev/ttyUSB1 »
- « /dev/ttyUSB3:/dev/ttyUSB3 »
- « /dev/ttyACM0:/dev/ttyACM0 »

Tout se passe mieux :


                Création de l'image "jeedom-v4_jeedom:latest"

Lancer la commande docker-compose build

Votre image jeedom-v4_jeedom:latest est créé

Nombreux Docker intermédiaires … Résultat :
Successfully built 7aa65b12269e
Successfully tagged jeedom-v4_jeedom:latest


Création du conteneur « jeedom-v4 »

Lancer la commande docker-compose up -d

root@DS_LS:/volume1/docker/jeedom-v4# docker-compose up -d
Creating jeedom-v4 … done


          Vérification du processus de l'installation de Jeedom

Pour vérifier que l’installation de Jeedom s’exécute correctement nous allons « rentrer » à l’intérieur de notre conteneur

Lancer la commande sudo docker exec -it jeedom-v4 /bin/bash

root@DS_LS:/volume1/docker/jeedom-v4# sudo docker exec -it jeedom-v4 /bin/bash
OCI runtime exec failed: exec failed: cannot exec a container that has stopped: unknown
root@DS_LS:/volume1/docker/jeedom-v4#

En effet le docker n’arrive pas a redémarrer a priori :
Capture1

J’ai essayé de faire le test conteneur ui est bien paramétré avec la commande

docker inspect -f <NOM_CONTENEUR_DOCKER>

Mais voici le résultat avec et sans les <>

root@DS_LS:/volume1/docker/jeedom-v4# docker inspect -f 7aa65b12269e
"docker inspect" requires at least 1 argument.
See 'docker inspect --help'.

Usage:  docker inspect [OPTIONS] NAME|ID [NAME|ID...]

Return low-level information on Docker objects

puis avec les <>

root@DS_LS:/volume1/docker/jeedom-v4# docker inspect -f <7aa65b12269e>
-ash: syntax error near unexpected token `newline'

Désolé je suis à nouveau bloqué mais plus de probleme de port USB a priori ?

Encore merci

erreur de syntax

docker inspect -f 7aa65b12269e

Je pense qu’il faudrait faire le ménage dans les images

lance les commandes
docker images
et
docker ps

donne moi aussi le contenu de ton docker-compose

Je viens de supprimer les images et meme désinstaller Docker pour tout supprimer nettoyer

Je viens de refaire le test en installant Docker en mode bridge en suivant le doc Jeedom et meme la impossible ! Le Docker reste allumé, mais impossible de le joindre : pourtant j’ai bien mis la redirection de port dans le container : https://doc.jeedom.com/fr_FR/installation/synology

Voici le docker compose :

version: ‹ 2 ›

networks:
default:
external:
name: mymacvlan

services:
jeedom:
container_name: jeedom-v4
build : ./
privileged: false
pid: « host »
cap_add:
- SYS_PTRACE
tty: true
hostname: jeedom
mac_address: a0:ca:ab:cd:ef:02
networks:
default:
ipv4_address: 192.168.1.243
volumes:
- « /volume1/docker/jeedom-v4/html:/var/www/html »
- « /volume1/docker/jeedom-v4/db:/var/lib/mysql »
devices:
- « /dev/ttyUSB0:/dev/ttyUSB0 »
- « /dev/ttyUSB1:/dev/ttyUSB1 »
- « /dev/ttyUSB3:/dev/ttyUSB3 »
- « /dev/ttyACM0:/dev/ttyACM0 »
restart: unless-stopped
environment:
- TZ=Europe/Paris
- PUID=1028
- PGID=101
- SYSTEMD_IGNORE_CHROOT=yes
- SHELL_ROOT_PASSWORD=MON_MOT_DE_PASSE_RESEAU_DU_USER_DU_NAS
- MYSQL_ROOT_PASSWD=MON_MOT_DE_PASSE_RESEAU_DU_USER_DU_NAS
- PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Je viens de m’apercevoir que j’avais modifié le port du service SSH (32 au lieu de 22) et du coupe cela devait perturber le bon fonctionnement
un serveur SSH est paramétré --> cela ne devait pas fonctionner

Je vais retenter une installation ce soir

Mais je ne comprends pas pourquoi je n’arrive pas à installer Docker en mode bridge tout simplement ?
Est ce que votre tuto a modifier un paramétrage qui ne me permet plus de faire tourner un docker bridge tout simple ? je pense aux redirections de port… ? mais je ne les retrouve plus sur le NAS

Pour résumé je fais tout cela car je trouve que mon Jeedom sur la machine virtuelle de mon DS218+ qui consomme trop de charge : j’ai des pointes a 5 voir 10 parfois de charge : cela m’inquiète un peu et j’ai parfois quelques scenarios qui plantent. J’ai le plugin camera qui gère 4 cameras. Est ce normal ces pics de charge ?
voici un exemple a l’instant : un probleme avace apache2 on dirait :
Capture1
Avez vous aussi une VM sur votre NAS ? Avec le meme souci ?
merci à vous

Je n’utilise pas VMM
uniquement docker

Il aurait bon de mettre le contenu du docker composé avec la balise code du forum
Car là on voit pas si il y a une erreur de positionnement des lignes de code

Supprimer docker ne supprime pas les images

Bonjour,
Voici le Docker compose :

version: '2'

networks:
    default:
        external:
             name: mymacvlan

services:
    jeedom:
        container_name: jeedom-v4
        build : ./
        privileged: false
        pid: "host"
        cap_add:
             - SYS_PTRACE
        tty: true
        hostname: jeedom
        mac_address: a0:ca:ab:cd:ef:02
        networks:
             default:
                ipv4_address: 192.168.1.243
        volumes:
             - "/volume1/docker/jeedom-v4/html:/var/www/html"
             - "/volume1/docker/jeedom-v4/db:/var/lib/mysql"
        devices:
             - "/dev/ttyUSB0:/dev/ttyUSB0"
             - "/dev/ttyUSB1:/dev/ttyUSB1"
             - "/dev/ttyUSB3:/dev/ttyUSB3"
             - "/dev/ttyACM0:/dev/ttyACM0"
        restart: unless-stopped
        environment:
             - TZ=Europe/Paris
             - PUID=1028
             - PGID=101
             - SYSTEMD_IGNORE_CHROOT=yes
             - SHELL_ROOT_PASSWORD=J'AI_MIS_LE_MOT_DE_PASSE_DU_USER_1028_DE_MON_NAS
             - MYSQL_ROOT_PASSWD=J'AI_MIS_LE_MOT_DE_PASSE_DU_USER_1028_DE_MON_NAS
             - PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

Je vais regarder comment supprimer proprement les images précédemment réalisées (je pensais qu’en supprimant la paquet Docker, les images allaient etre supprimées car le repertoire Docker a lui été supprimé)

Merci