Intégration Node-RED: Donner accès aux ports USB au container Docker

Bonjour @pierre-gilles
ça correspond a cette instruction ?
:sudo chown -R 1000:1000 /var/lib/gladysassistant/node-red

Si c’est ça
j’ai modifier le Docker run comme ça et ça fonctionne:

sudo docker run -d \
-u node-red:dialout \
  --name gladys-node-red \
  --restart always \
  -p 1881:1880 \
  -v /var/lib/gladysassistant/node-red:/data \
  --log-opt max-size=10m \
--device=/dev/ttyUSB0 \
  nodered/node-red:3.1

Mais il faut taper, apres, cette commande :

sudo chown -R 1000:1000 /var/lib/gladysassistant/node-red

Mais si tu me confirmes qu’elle est dans le code de l’intégration node red ça devrait fonctionner.

Avec cette commande --device=/dev/ttyUSB0, on impose le branchement du Rflink sur le ports USB0? est ce que ça pose un probleme ?

C’est ça :slight_smile:

Oui ça pose un problème, c’est toujours le même souci, on ne sait pas quel port va être utilisé.

C’est pour ça qu’à la base ma PR initiale proposait une approche basée sur un partage de volumes:

-v /dev:/dev \
-v /run/udev:/run/udev:ro \

Avec en plus l’option --privileged pour donner des droits supplémentaires au container.

Mais d’après tes retours, ça ne marche pas.

j’ai reussi a faire ce que tu m as demandé, il y a longtemps :roll_eyes:
Gladys est bien lancé en root, mais node-red est lancé par l’utilisatuer node -red.

pi@rasp3b:~ $ docker exec -it gladys-node-red bash
eeb32d757218:~$ whoami
node-red
eeb32d757218:~$ groups
node-red
eeb32d757218:~$ exit


pi@rasp3b:~ $ docker exec -it gladys bash
root@rasp3b:/src/server# whoami
root
root@rasp3b:/src/server# groups
root

Donc la il ya un probleme ? si j’ai bien compris .

Je voulais mettre node-red dans le groups dialout, dans le docker run/ de l’image Gladys, mais comme le container node-red n’est pas encore créé , ça me renvoie une erreur

Je ne pense pas que ce soit lié, tu compares les utilisateurs à l’intérieur du container, ce n’est pas la même chose.

Si on regarde le Dockerfile du projet Node-RED (Source), on voit qu’ils créént un utilisateur Node-RED.