Erreur MySQL table jeedom.config manquante installation images docker

Bonjour,

Je rencontre des erreurs à l’installation de Jeedom avec Docker (dans le but d’avoir une instance de test).

J’ai suivi les instructions officielles avec le docker-compose avec un seul service :

services:
   jeedom:
     image: jeedom/jeedom:lastest
     container_name: jeedom
     volumes:
       - http:/var/www/html
       - db:/var/lib/mysql
     tmpfs:
       - /tmp/jeedom
     ports:
       - 40080:80
     restart: always
     network_mode: bridge
     healthcheck:
       test: ["CMD", "curl", "-fs", "-S", "--max-time", "2", "http://localhost:80"]
       interval: 30s
       timeout: 10s
       retries: 5
 volumes:
   db:
   http:

Le service se lance mais quand je tente de me connecter à l’interface web je tombe sur l’erreur suivante :

[MySQL] Error code : 42S02 (1146). Table 'jeedom.config' doesn't exist : SELECT `key`,`value` FROM config WHERE `key` IN ('language') AND plugin=:plugin

La latest étant en beta, j’ai essayé la version 4.4-bullseye marquée comme à privilégier mais j’ai la même erreur.

Cela semble être similaire à ces sujets :

J’ai testé les commandes proposées par le deuxième sujet mais des erreurs subsistent une fois connecté. Cela laisse à penser que l’installation n’est toujours pas complète.

Auriez-vous une idée svp ? Comment les images docker sont-elles testées ?

Merci

Je penses qu’il te manque quelques chose dans volumes.

Db: le lien du fichier de partage
Http: idem

Les fichiers dans les volumes ne sont pas censés être créés automatiquement au premier lancement ?

sisi, mais il faut mettre le chemin des disques exemple :

volumes:
   db: /srv/dev-disk-by-uuid-087cb8de1-01ta-4851-a381-10549f8170d3
   http: /srv/dev-disk-by-uuid-087cb8de1-01ta-4851-a381-10549f8170d3

Attention les chemins sont propre à ton matériel !

sinon j’utilise cette stack pour mes jeedoms , il y a la partie Mosquitto pour le mqtt mais tu peux la supprimer . La tienne doit tout aussi bien fonctionner

services:
  mosquitto:
    hostname: mqtt.local
    container_name: mqtt
    image: eclipse-mosquitto:latest
    restart: unless-stopped
    volumes:
      - /chemin de ton disque /mqtt/mosquitto.conf:/mosquitto/config/mosquitto.conf:ro
      - /chemin de ton disque /mqtt/mosquitto.passwd:/mosquitto/config/mosquitto.passwd
      - /chemin de ton disque /mqtt/log/mosquitto.log:/mosquitto/log/mosquitto.log
      - /chemin de ton disque /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/ttyACM0:/dev/ttyACM0"
#      - "/dev/ttyUSB1:/dev/ttyUSB1"
    restart: unless-stopped
    volumes:
      - /etc/localtime:/etc/localtime:TZ
      - /chemin de ton disque /jeedom/datas:/var/www/html
      - /chemin de ton disque /jeedom/mysql:/var/lib/mysql
    ports:
      - 9080:80
    privileged: true
    networks:
     - jeedom
networks:
    jeedom:
        name: jeedom
        driver: bridge

Après je ne suis pas expert sur docker , redis moi ce que ça donne

Bonjour,

Tu peux prendre en exemple le docker compose de ce tuto et l’adapter en fonction de ton matériel et configuration

D’accord ta configuration utilise des bind mounts au lieu de volumes nommés. Après pour moi, ça ne devrait rien changer vu que Jeedom est censé créer le nécessaires dans ces répertoires… D’ailleurs j’ai commenté les volumes pour voir et j’ai toujours le même souci…

Merci pour ton tuto que j’ai parcouru. J’avoue que je ne vois pas de différence fondamentale au niveau des volumes…

Les log docker que j’ai :

$ docker logs -f jeedom
Start init
Start jeedom installation
--2024-11-26 15:32:55--  https://raw.githubusercontent.com/jeedom/core/master/install/install.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... failed: Temporary failure in name resolution.
wget: unable to resolve host address 'raw.githubusercontent.com'
mysql.user table already exists!
Run mysql_upgrade, not mysql_install_db
mysql: unrecognized service
Stopping MariaDB database server: mariadbd.
Starting MariaDB database server: mariadbd.
Setting timezone to America/Chicago

Current default time zone: 'America/Chicago'
Local time is now:      Tue Nov 26 15:33:02 CST 2024.
Universal Time is now:  Tue Nov 26 21:33:02 UTC 2024.

Use generate password : To0buwgi4wqja04
Start atd
Stopping deferred execution scheduler: atd.
Starting deferred execution scheduler: atd.
Starting mariadb
mysql: unrecognized service
Stopping MariaDB database server: mariadbd.
Starting MariaDB database server: mariadbd.
All init complete
Start apache2
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
Starting Apache httpd web server: apache2.
Add trap docker_stop

Il y a des petits messages d’erreurs/warnings mais ça n’a pas l’air d’être rédhibitoire…

Bon visiblement le problème de résolution de nom de domaine n’est pas anodin.

En ajoutant un DNS au niveau du service jeedom :

...
dns:
 - 1.1.1.1
...

L’installation se déroule beaucoup mieux !

$ docker logs -f jeedom
Start init
Start jeedom installation
--2024-11-26 16:08:55--  https://raw.githubusercontent.com/jeedom/core/master/install/install.sh
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 185.199.110.133, 185.199.111.133, 185.199.109.133, ...
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|185.199.110.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 17419 (17K) [text/plain]
Saving to: '/root/install.sh'

     0K .......... .......                                    100% 12.9M=0.001s

2024-11-26 16:08:55 (12.9 MB/s) - '/root/install.sh' saved [17419/17419]

Welcome to Jeedom installer
Jeedom version : master
Web folder : /var/www/html
Installation type : standard
---------------------------------------------------------------------
Starting step 6 - download Jeedom
--2024-11-26 16:08:55--  https://codeload.github.com/jeedom/core/zip/refs/heads/master
Resolving codeload.github.com (codeload.github.com)... 140.82.121.9
Connecting to codeload.github.com (codeload.github.com)|140.82.121.9|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 88166654 (84M) [application/zip]
Saving to: '/tmp/jeedom.zip'

     0K .......... .......... .......... .......... ..........  0% 1.14M 74s
     .
     .
     .
 86100K                                                       100%  473G=3.3s

2024-11-26 16:08:59 (25.8 MB/s) - '/tmp/jeedom.zip' saved [88166654/88166654]

Step 6 - download Jeedom done
mysql.user table already exists!
Run mysql_upgrade, not mysql_install_db
mysql: unrecognized service
Stopping MariaDB database server: mariadbd.
Starting MariaDB database server: mariadbd ..
Welcome to Jeedom installer
Jeedom version : master
Web folder : /var/www/html
Installation type : standard
---------------------------------------------------------------------
Starting step 10 - Jeedom install
Begin installation of composer
--2024-11-26 16:09:02--  https://getcomposer.org/installer
Resolving getcomposer.org (getcomposer.org)... 54.36.53.46, 2001:41d0:302:1100::8:104f
Connecting to getcomposer.org (getcomposer.org)|54.36.53.46|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 58444 (57K) [application/octet-stream]
Saving to: 'composer-setup.php'

     0K .......... .......... .......... .......... .......... 87% 2.90M 0s
    50K .......                                               100%  296M=0.02s

2024-11-26 16:09:02 (3.30 MB/s) - 'composer-setup.php' saved [58444/58444]

All settings correct for using Composer
Downloading...

Composer (version 2.8.3) successfully installed to: /var/www/html/composer.phar
Use it: php composer.phar

End installation of composer
[START INSTALL]
****Install jeedom at (2024-11-26 23:09:03)****

Installation of Jeedom
Installating database...OK
Post install...
[START CONSISTENCY]
[START CHECK AND FIX DB]
[END CHECK AND FIX DB]
ls: cannot access '/tmp/jeedom_install_in_progress*': No such file or directory
warning: commands will be executed using /bin/sh
job 1 at Tue Nov 26 16:09:00 2024
Can't open /var/run/atd.pid to signal atd. No atd running?
Check jeedom package...OK
Check jeedom database...OK
Fix default summary...OK
Check crons...
Create plugin::cronDaily
Create jeedom::backup
Create plugin::cronHourly
Create scenario::check
Create scenario::control
Create jeedom::cronDaily
Create jeedom::cronHourly
Create jeedom::cron5
Create jeedom::cron10
Create jeedom::cron
Create plugin::cron
Create plugin::cron5
Create plugin::cron10
Create plugin::cron15
Create plugin::cron30
Create plugin::checkDeamon
Create cache::persist
Create history::archive
Create plugin::heartbeat

Check filesystem right...OK
Check jeedom object...OK
Check jeedom cmd...OK
Create default user function...OK
System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down
Add parameter for mariadb service...OK
Set cache hour...OK
Check composer...OK
npm warn using --force Recommended protections disabled.
Check nodejs...Get:1 http://deb.debian.org/debian bullseye InRelease [116 kB]
Get:2 http://deb.debian.org/debian-security bullseye-security InRelease [27.2 kB]
Get:3 http://deb.debian.org/debian bullseye-updates InRelease [44.1 kB]
Get:4 https://deb.nodesource.com/node_20.x nodistro InRelease [12.1 kB]
Get:5 http://deb.debian.org/debian bullseye/main amd64 Packages [8066 kB]
Get:6 http://deb.debian.org/debian-security bullseye-security/main amd64 Packages [309 kB]
Get:7 http://deb.debian.org/debian bullseye-updates/main amd64 Packages [18.8 kB]
Get:8 https://deb.nodesource.com/node_20.x nodistro/main amd64 Packages [9928 B]
Fetched 8603 kB in 1s (8620 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (2.2.4).
build-essential is already the newest version (12.9).
lsb-release is already the newest version (11.1.0).
git is already the newest version (1:2.30.2-1+deb11u3).
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
[Check Version NodeJS actuelle : v20.18.0 : [  OK  ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [  OK  ]
Clean npm cache
OK
[END CONSISTENCY]
Creating user (admin,admin)
OK
Install duration : 4s
[END INSTALL SUCCESS]
Step 10 - Jeedom install done
Welcome to Jeedom installer
Jeedom version : master
Web folder : /var/www/html
Installation type : standard
---------------------------------------------------------------------
Starting step 11 - Jeedom post-install
no crontab for root
Hit:1 http://deb.debian.org/debian bullseye InRelease
Hit:2 http://deb.debian.org/debian-security bullseye-security InRelease
Hit:3 http://deb.debian.org/debian bullseye-updates InRelease
Hit:4 https://deb.nodesource.com/node_20.x nodistro InRelease
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (2.2.4).
build-essential is already the newest version (12.9).
lsb-release is already the newest version (11.1.0).
git is already the newest version (1:2.30.2-1+deb11u3).
0 upgraded, 0 newly installed, 0 to remove and 5 not upgraded.
[Check Version NodeJS actuelle : v20.18.0 : [  OK  ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [  OK  ]
Clean npm cache
npm warn using --force Recommended protections disabled.
Step 11 - Jeedom post-install done
Setting timezone to America/Chicago

Current default time zone: 'America/Chicago'
Local time is now:      Tue Nov 26 16:09:09 CST 2024.
Universal Time is now:  Tue Nov 26 22:09:09 UTC 2024.

Use generate password : 6RlAQw4PYP1nHpw
Start atd
Stopping deferred execution scheduler: atd.
Starting deferred execution scheduler: atd.
Starting mariadb
mysql: unrecognized service
Stopping MariaDB database server: mariadbd.
Starting MariaDB database server: mariadbd.
All init complete
Start apache2
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 172.17.0.2. Set the 'ServerName' directive globally to suppress this message
Starting Apache httpd web server: apache2.
Add trap docker_stop

Avec les logs c’est tout de suite plus simple . :wink:

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.