J’ai encore un soucis de mot de passe. On reporte bien les valeurs la page ?
nom d’utilisateur : admin
mot de passe : le mot de passe généré
Car j’ai beau copier/coller ou taper au clavier ces valeurs, je suis toujours en echec de connexion :
C’etait pour cette partie ma réponse
Bonjour @cce66
tu es devin , je n’avais pas encore tester la connexion avec le mot de passe. J’ai essayé sur Chrome c’est pareil. Et j’ai regardé avec about:logins sur Firefox, il n’ya pas de mot de passe enregistré, ni meme d’adresse se rapportant a NodeRed
Ah si c’est un gros problème ça, certains utilisateurs (notamment sur Synology ou autre) stockent Gladys dans un autre dossier, donc c’est hyper important que ce cas marche
Mais c’est bizarre, normalement ta PR détecte le dossier host @Lokkye non?
oups
Je n’arrive toujours pas a ouvrir Node-Red, avec les identifiants générés sur la page de Gladys
. Meme apres plusieurs essais et re-installation de l’image delogzway/gladys:nodered
Maintenant oui mais cela n’a pas toujours été le cas. J’ai normallement fixé ce problème dans la derniere version. (Dans ce commit : https://github.com/GladysAssistant/Gladys/pull/1809/commits/59d1946fec3cc5d243a387a87fae48761e54a3cd)
Est ce que tu as fait un « docker pull delogzway/gladys:nodered » avant de relancer gladys car sans cette commande il ne télécharge pas la dernière version du docker
et non, je recharge l’image apres avoitr tout reinitialisé. je vais faire ça et je te tiens au courant
on est d’accord l’image est a jour?
pi@gladys:// $ docker pull delogzway/gladys:nodered
nodered: Pulling from delogzway/gladys
Digest: sha256:68707d402a034c407ed299cb344beaa3ae94558f89ba5f896daebff7f91ec726
Status: Image is up to date for delogzway/gladys:nodered
docker.io/delogzway/gladys:nodered
Donc apres avoir fait un docker pull
, reinstaller l’image delogzway/gladys:nodered
, en utilisant le dossier /gladysassistant_nodered
au lieu de/gladysassistant
, meme probleme que precedement NodeRed redemmarre en boucle. Pas d’acces à la page Nodered.
Voici les logs de gladys-test-nodered \
2023-09-21T16:02:13+0200 <info> checkForContainerUpdates.js:13 (NodeRedManager.checkForContainerUpdates) Node-RED: Checking for current installed versions and required updates...
2023-09-21T16:02:13+0200 <info> checkForContainerUpdates.js:17 (NodeRedManager.checkForContainerUpdates) Node-RED: update #2 of the container required...
2023-09-21T16:02:13+0200 <info> checkForContainerUpdates.js:34 (NodeRedManager.checkForContainerUpdates) Node-RED: update #2 of the container done
2023-09-21T16:02:13+0200 <info> installContainer.js:44 (NodeRedManager.installContainer) Nodered: is being installed as Docker container...
2023-09-21T16:02:13+0200 <info> installContainer.js:45 (NodeRedManager.installContainer) Pulling nodered/node-red:3.1 image...
2023-09-21T16:02:14+0200 <info> installContainer.js:49 (NodeRedManager.installContainer) Nodered: Preparing environment...
2023-09-21T16:02:14+0200 <info> configureContainer.js:16 (NodeRedManager.configureContainer) Node-RED: Docker container is being configured...
2023-09-21T16:02:14+0200 <info> configureContainer.js:36 (NodeRedManager.configureContainer) Node-RED: Writing default configuration...
2023-09-21T16:02:14+0200 <info> installContainer.js:52 (NodeRedManager.installContainer) Creation of container...
2023-09-21T16:02:17+0200 <info> installContainer.js:57 (NodeRedManager.installContainer) Node-RED: successfully installed and configured as Docker container
2023-09-21T16:02:17+0200 <info> configureContainer.js:16 (NodeRedManager.configureContainer) Node-RED: Docker container is being configured...
2023-09-21T16:02:17+0200 <info> configureContainer.js:34 (NodeRedManager.configureContainer) Node-RED: configuration file already exists.
2023-09-21T16:02:17+0200 <info> installContainer.js:80 (NodeRedManager.installContainer) Node-RED: container is (re)starting...
2023-09-21T16:02:23+0200 <info> installContainer.js:86 (NodeRedManager.installContainer) Node-RED: container successfully started
Quand je modifie ma commande en remplaçant
-v /var/lib/gladysassistant_test_nodered:/var/lib/gladysassistant \
par
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
voici les logs de NodeRed
pi@gladys:// $ docker logs gladys-node-red
21 Sep 14:39:48 - [info]
Welcome to Node-RED
===================
21 Sep 14:39:48 - [info] Node-RED version: v3.1.0
21 Sep 14:39:48 - [info] Node.js version: v16.20.2
21 Sep 14:39:48 - [info] Linux 5.10.103-v8+ arm64 LE
21 Sep 14:39:51 - [info] Loading palette nodes
21 Sep 14:39:55 - [info] Settings file : /data/settings.js
21 Sep 14:39:55 - [info] Context store : 'default' [module=memory]
21 Sep 14:39:55 - [info] User directory : /data
21 Sep 14:39:55 - [warn] Projects disabled : editorTheme.projects.enabled=false
21 Sep 14:39:55 - [info] Flows file : /data/flows.json
21 Sep 14:39:55 - [info] Creating new flow file
21 Sep 14:39:55 - [warn]
---------------------------------------------------------------------
Your flow credentials file is encrypted using a system-generated key.
If the system-generated key is lost for any reason, your credentials
file will not be recoverable, you will have to delete it and re-enter
your credentials.
You should set your own key using the 'credentialSecret' option in
your settings file. Node-RED will then re-encrypt your credentials
file using your chosen key the next time you deploy a change.
---------------------------------------------------------------------
21 Sep 14:39:55 - [info] Server now running at http://127.0.0.1:1880/
21 Sep 14:39:55 - [warn] Encrypted credentials not found
21 Sep 14:39:55 - [info] Starting flows
21 Sep 14:39:55 - [info] Started flows
pi@gladys:// $
J’accede à la page NodeRed! parcontre je ne peux toujours pas ouvrir NodeRed a cause des identifiants qui m’amène toujours a un echec de connexion.
Alors je ne sais pas pourquoi, ça fait dix fois minimum, que je fais des copier/coller du mot de passe et du nom d’utilisateur , mais maintenant ça fonctionne voila les logs de NodeRed quand les indentifiants fonctionnent
Welcome to Node-RED
===================
21 Sep 14:55:55 - [info] Node-RED version: v3.1.0
21 Sep 14:55:55 - [info] Node.js version: v16.20.2
21 Sep 14:55:55 - [info] Linux 5.10.103-v8+ arm64 LE
21 Sep 14:55:58 - [info] Loading palette nodes
21 Sep 14:56:01 - [info] Settings file : /data/settings.js
21 Sep 14:56:01 - [info] Context store : 'default' [module=memory]
21 Sep 14:56:01 - [info] User directory : /data
21 Sep 14:56:01 - [warn] Projects disabled : editorTheme.projects.enabled=false
21 Sep 14:56:01 - [info] Flows file : /data/flows.json
21 Sep 14:56:01 - [info] Creating new flow file
21 Sep 14:56:01 - [warn]
---------------------------------------------------------------------
Your flow credentials file is encrypted using a system-generated key.
If the system-generated key is lost for any reason, your credentials
file will not be recoverable, you will have to delete it and re-enter
your credentials.
You should set your own key using the 'credentialSecret' option in
your settings file. Node-RED will then re-encrypt your credentials
file using your chosen key the next time you deploy a change.
---------------------------------------------------------------------
21 Sep 14:56:01 - [info] Server now running at http://127.0.0.1:1880/
21 Sep 14:56:01 - [warn] Encrypted credentials not found
21 Sep 14:56:01 - [info] Starting flows
21 Sep 14:56:01 - [info] Started flows
@Psoy et @Lokkye
J’ai trouvé cela si cela peut aider…
III. Personnalisation & Sécurisation de Node-RED
Pour administrer Node-RED, il existe un outil , node-red-admin. Pour l’installer, entrez la
commande sudo npm install -g node-red-admin dans votre raspberry.
Activer l’authentification
Il est possible de sécuriser l’accès à l’interface de Node-RED en imposant une
indentification par identifiant & mot de passe. Pour cela, sur votre raspberrypi, vous
devrez accéder au fichier de configuration de Node-RED, dont le chemin par défaut est :
/home/[vous]/.node-red/settings.js . Dans ce fichier se trouve la propriété
«adminAuth». Décommentez-la et l’authentification sera activée. Le login par défaut est
admin, et son mot de passe password.
2.Créer un nouvel utilisateur
Dans le fichier settings.js, la propriété «adminAuth» contient un tableau «user». Ce
tableau contient la liste des utilisateurs, qui sont définis par les champs :
◦ username : l’identifiant de l’utilisateur
◦ password : le mot de passe de l’utilisateur , hashé au format bcrypt.
Pour pouvoir créer un mot de passe, utilisez l’outil node-red-admin.
La commande node-red-admin hash-pw vous invitera à entrer le mot de
passe que vous voulez, et vous reverra le hashage, que vous n’aurez qu’à
copier-coller dans le fichier settings.
◦ permissions : les permissions accordées.
• * : Toutes les permissions
• read : Ne peut pas déployer ni changer les paramètres et tout changement
dans le flow ne pourra être sauvegardéChanger l’adresse de l’éditeur
L’adresse par défaut de l’éditeur est [ip-raspberry]:1880.
Vous pouvez la modifier grâce au fichier settings.js
Vous pouvez changer le port en avec la ligne : uiPort: process.env.PORT || 1880
Vous pouvez ajouter une arborescence en décommentant la ligne : httpRoot: ‹ /red ›.
Et en remplaçant le /red par le chemin que vous souhaitez utiliser
L’adresse deviendra alors [ip-raspberry]:[votre port] / [votre chemin]
Si vous souhaitez utiliser le port 80 ( ou tout port protégé ), vous ne pourrez pas démarrer
Node-RED avec la commande de base, le port étant protégé. Vous devrez utiliser la
commande sudo node-red -u .node-red , qui permet de lancer Node-RED en tant que root
tout en utilisant votre répertoire node-red normal.
NOTE : Le port 80 étant le port http , il n’est pas indispensable dans le chemin du
navigateur. Ainsi, si vous utilisez le port 80, le chemin [ip-raspberry] / [votre chemin]
suffira pour atteindre Node-RED.Avoir plusieurs Node-RED
Vous pouvez avoir plusieurs installations de Node-RED sur le même serveur, chacune ayant
sa propre configuration, ses propres fichiers et ses propres nodes installées.
Une fois Node-RED installé, créez le(s) répertoire(s) dans lequel vous voulez le mettre
(mkdir chemin) et copiez le repertoire de Node-RED dedans , avec la commande
cp -r .node-red chemin/.node-red .Faites cette manipulation autant de fois que vous
voulez de Node-RED différents. Chaque Node-RED est indépendant, et vous devrez installer
les nodes voulues sur chaque Node-RED différent.
Pour lancer un Node-RED particulier, utilisez la commande
node-red -u chemin/.node-red
Le chemin est absolu ou relatif depuis /home/VOUS
N’oubliez pas le sudo si vous utilisez un port protégé (EX : 80)
Cette solution ne permet de lancer qu’un Node-RED à la fois
Pour faire avancer le schmilblick, je stop le container gladys-node-red et j’ai le container gladys-test-nodered actif
j’accède à node-red avec http://ip:1880 sans authentification et avec mes flows que j’avais fait avec le container gladys-node-red
Normal ou pas normal ?
Il ne devrait pas avoir le même environnement de travail non donc ne pas voir les flows de l’autre node-red ?
Bon je viens de comprendre qu’en fait que gladys-test-nodered est en fait une copie de gladys qu’utilise @Lokkye pour ses tests (gladys-lokkie aurait été moins perturbant )
Je vais me coucher la nuit porte conseil !
merci @cce66
Je reviens sur ce sujet, quelle est la conclusion ? Est-ce que l’image est fonctionnelle pour tout le monde où reste-t-il des bugs ?
Salut @pierre-gilles
Perso, je n’arrives pas à me connecter alors que node-red est censé être démarré
Par contre, on a pas la possibilité de définir un mot de passe lors de l’utilisation ni à la création
el le container gladys-node-red redemarre en boucle
et le résultat de sudo docker logs -f gladys-node-red
Error: EACCES: permission denied, copyfile ‹ /usr/src/node-red/node_modules/node-red/settings.js › → ‹ /data/settings.js ›
at Object.copyFileSync (node:fs:2847:3)
at copyFile (/usr/src/node-red/node_modules/fs-extra/lib/copy/copy-sync.js:64:6)
at onFile (/usr/src/node-red/node_modules/fs-extra/lib/copy/copy-sync.js:50:25)
at getStats (/usr/src/node-red/node_modules/fs-extra/lib/copy/copy-sync.js:42:44)
at Object.copySync (/usr/src/node-red/node_modules/fs-extra/lib/copy/copy-sync.js:32:10)
at Object. (/usr/src/node-red/node_modules/node-red/red.js:129:20)
at Module._compile (node:internal/modules/cjs/loader:1198:14)
at Object.Module._extensions…js (node:internal/modules/cjs/loader:1252:10)
at Module.load (node:internal/modules/cjs/loader:1076:32)
at Function.Module._load (node:internal/modules/cjs/loader:911:12) {
errno: -13,
syscall: ‹ copyfile ›,
code: ‹ EACCES ›,
path: ‹ /usr/src/node-red/node_modules/node-red/settings.js ›,
dest: ‹ /data/settings.js ›
Bonjour @pierre-gilles
Pour moi ça fonctionne, comme je l’ai dis plus haut, je n’arrivais pas a copier/coller les identifiants, puis a un moment ça a fonctionné, et depuis c’est bon. Par contre l’histoire des noms de fichiers c’est toujours le meme probleme.
Quand je modifie ma commande en remplaçant
-v /var/lib/gladysassistant_test_nodered:/var/lib/gladysassistant \
par
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
ça fonctionne,
Sinon je n’ouvre pas NodeRed, car il restart en permanence
Salut @Psoy
Il faudrait envoyer le résultat de la commande docker ps -a pour voir quels containers sont démarré et tu a bien accèdé au node-red de @Lokkye via le port 1881 ?
Bonjour @cce66
voila la commande
pi@gladys:~ $ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
18e48c1ff18e nodered/node-red:3.1 "./entrypoint.sh" 12 minutes ago Restarting (1) 48 seconds ago gladys-node-red
090e1056efb1 gladysassistant/gladys:v4 "docker-entrypoint.s…" 30 minutes ago Exited (137) 12 minutes ago gladys
*sur la commande ci-dessus, j’ai fais un copier/coller d’un message ci-dessus (si on regarde bien NodeRed redemmare en boucle). Mais comme j’ai remis en route mon RPI en mode motioneye je ne peux pas voir la commande docker ps -a actuellement, mais je te confirme que j’ai ces deux containers qui tournent normalement.
Oui j’ai bien accèdé a NodeRed avec le port 1881
Bizarre ton container gladys-node-red qui boucle et ton container gladys « exited » ? C’est toi qui l’a arreté
Tu devrais essayer de remover le gladys-node-red et relancer le gladys et essayer de réactiver node-red depuis gladys
bonsoir @cce66
Je t’ai ecrit que c’etait un copier/ coller d’un message précédent, où ça ne fonctionnait pas, je te montrai juste les containers qui etaient installés.
Mais comme je l’ai signalé, à l’heure actuelle, tout fonctionne bien pour moi,