Instalation d'un stack jeedom dans portainer

Bonjour

Deuxième fois que ma carte Sd lâche sur mon Raspbery PI3

J’ai un NAS qui tourne sur Openmediavault et qui dispose de Portainer.io et de Docker

J 'ai voulu instaler une image Jedom qui est dispo sur le hub https://hub.docker.com
Je n’arrive pas à la faire tourner car je ne sais pas ajouter les « Published Ports » donc je ne peux pas démarrer mon Jeedom.
Je suis donc passé par la fonction stack
Après une recherche pas vraiment concluent j’ai trouvé 2 sites, un ou je n’ai pas réussi à faire tourné Jeedom et l’autre qui fonctionne par contre des éléments non utilent pour moi.
J’ai donc fait un mixte un peu au hasard car je ne connais pas le code.
J’ai réussi à demarrer jeedom. Yes

Je vous présente le fichier . yaml

version: '2.3'

services:

  jeedom-server:
    container_name: jeedom-server
    image: jeedom/jeedom
    networks:
     - internal
    
    ports:
     - "9070:80"
    volumes:
     - /home/docker/jeedom/data/jeedom:/var/www/html
    depends_on:
     - db
    
    restart: always

  db:
    container_name: jeedom-mysql
    image: mysql:5.7
    command: --default-authentication-plugin=mysql_native_password
    networks:
     - internal
    volumes:
     - /home/docker/jeedom/data/mysql:/var/lib/mysql
    environment:
     - MYSQL_DATABASE=jeedom
     - MYSQL_USER=jeedom
     - MYSQL_PASSWORD=jeedom_mdp
     - MYSQL_ROOT_PASSWORD=mdp_root
    restart: always

networks:
   internal:
     external: false

Si vous connaissez le sujet pouvez vous me dire si cela semble correcte et si vous avez un autre modele plus adapté à me proposer

Bonne journée

Hello,

J’utilise cette stack pour mes tests jMQTT (donc avec en plus un container mosquitto) :

version: "3.1"

services:
  mosquitto:
    image: eclipse-mosquitto:latest
    restart: unless-stopped
    volumes:
     - mosquitto_config:/mosquitto/config
     - mosquitto_data:/mosquitto/data
     - mosquitto_log:/mosquitto/log
    ports:
     - 1883:1883
     - 9001:9001

  jeedom:
    image: jeedom/jeedom:alpha
    restart: unless-stopped

    volumes:
      - jeedom_data:/var/www/html
      - jeedom_db:/var/lib/mysql
    ports:
      - 9080:80

volumes:
  jeedom_data:
  jeedom_db:
  mosquitto_config:
  mosquitto_data:
  mosquitto_log:

Mais celle-ci devrait suffire pour Jeedom tout seul :

version: "3.1"

services:
  jeedom:
    image: jeedom/jeedom:alpha
    restart: unless-stopped

    volumes:
      - data:/var/www/html
      - db:/var/lib/mysql
    ports:
      - 9080:80

volumes:
  data:
  db:

Bad

1 « J'aime »

Bonjour @Bad et merci pour ce retour.

J’ai trouver sur un site une personne qui déclarer ses ports usb dans son Stack

Device :
      - "/dev/ttyUSB0:/dev/ttyUSB0"
      - "/dev/ttyUSB1:/dev/ttyUSB1"

Nécessaire ou pas si je branche une clé Z Wave ou Rfx Com

Autre question je voudrai utiliser Influxdb et peut etre Grafana, vaut il mieux les déclarer dans se Stack ou créer des Stack spécifiques.

Hello,

Nécessaire de déclarer tout ce à quoi le container doit pouvoir accéder.
Par contre les dongles zw/zb sont souvent plutôt sur ttyAMA* ou ttyACM* que ttyUSB* et je te recommande de les figer leurs nom/id sur le système hôte comme expliqué ici :

Pour moi une stack = un service.
Si tu n’utilise influx que pour Jeedom, met le dans la stack.
Si tu veux modifier/redémarrer l’un sans toucher à l’autre, 2 stacks.

Bad

Bonjour

@Bad j’ai pris ce stack et cela fonctionne bien si je veux installer une base influxdb puis Grafana as tu un solution à proposer, j’ai du mal à trouver le paramétrage.
Si je monte ce stack faudra il au final le plugin influxdb connector
ou il y a une meilleur solution pour charger les datas dans une autre base de donnée du type msql

Bonjour,

pour information voici ma stack portainer :

prerequis (chez moi dans /mnt/ssd/) :
Sinon docker crèe un répertoire avec le nom du fichier et mqtt ne peut créer son fichier de conf et ne demarre jamais…

  • créer un repertoire /mnt/ssd/mqtt
  • créer un repertoire /mnt/ssd/mqtt/data
  • créer un repertoire /mnt/ssd/mqtt/log
  • créer un fichier /mnt/ssd/mqtt/mosquitto.passwd (avec quelques espaces dedans)
  • créer un fichier /mnt/ssd/mosquitto.conf
pid_file /mosquitto/data/mosquitto.pid

per_listener_settings true
listener 1883
allow_anonymous true

persistence true
persistence_location /mosquitto/data/

log_dest file /mosquitto/log/mosquitto.log
log_dest stdout
  • Creer un fichier /mnt/ssd/log/mosquitto.log
    (y mettre un caractère quelconque)

  • Modifier les droits sur le dossier :
    chown -R 1883:1883 mqtt/

  • puis créer la stack :

version: "3"

services:
  mosquitto:
    hostname: mqtt.local
    container_name: mqtt
    image: eclipse-mosquitto:latest
    restart: unless-stopped
    volumes:
      - /mnt/ssd/mqtt/mosquitto.conf:/mosquitto/config/mosquitto.conf:ro
      - /mnt/ssd/mqtt/mosquitto.passwd:/mosquitto/config/mosquitto.passwd
      - /mnt/ssd/mqtt/log/mosquitto.log:/mosquitto/log/mosquitto.log
      - /mnt/ssd/mqtt/data:/mosquitto/data
    ports:
     - 1883:1883
     - 8883:8883
     - 9001:9001
    networks:
     - jeedom

  jeedom:
    hostname: jeedom.local
    container_name: jeedom
    image: jeedom/jeedom:latest
    devices:
      - "/dev/ttyUSB0:/dev/ttyUSB0"
#      - "/dev/ttyUSB1:/dev/ttyUSB1"
    restart: unless-stopped
    volumes:
      - /mnt/ssd/jeedom/datas:/var/www/html
      - /mnt/ssd/jeedom/mysql:/var/lib/mysql
    ports:
      - 9080:80
    networks:
     - jeedom
networks:
    jeedom:
        name: jeedom
        driver: bridge

(pour enter dans jeedom en ligne de commandes depuis le serveur : docker exec -it --user root jeedom /bin/bash)

Voici mon parametrage Mqtt dans jeedom

ps: il faut plugger la clé zwave (une Aeotec ZWA010 « Z-Stick 7 » GEN7 en ce qui me concerne) et par la commande dmesg trouver le port usb utilisé et le renseigner dans la stack AVANT de tout créer sous portainer (voir les posts précédents :wink: ).

En ce qui me concerne j’utilise docker sur un micro server Gen8 sous Xeon 1265L-v2 et les temps de reponse de mes lumières sont maintenant de 1 seconde max (contre 3 minimum sur un raspberry pi3).

voilà… j’espères avoir aidé ceux qui veulent se lancer.

ps: je pense qu’il va falloir ajouter le repertoire plugins dans les volumes… a voir plus tard.

Merci @j_c_b .
Pour l’instant je n’ai pas beaucoup de temps , je ne fait donc rien de nouveau.
Je regarderai donc pus tard.
Je laisse toujours le sujet ouvert car j’espère un jour reprendre donc si de nouvelle idée vous viennent, n’hésités pas à les déposer ici.

Bonne journée